How to replace failure by a list of successes
Proc. of a conference on Functional programming languages and computer architecture
Attribute grammars as a functional programming paradigm
Proc. of a conference on Functional programming languages and computer architecture
Constructing natural language interpreters in a lazy functional language
The Computer Journal - Special issue on Lazy functional programming
Higher order attribute grammars
PLDI '89 Proceedings of the ACM SIGPLAN 1989 Conference on Programming language design and implementation
Attribute grammar paradigms—a high-level methodology in language implementation
ACM Computing Surveys (CSUR)
Memoizing purely functional top-down backtracking language processors
Science of Computer Programming
An efficient context-free parsing algorithm
Communications of the ACM
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Efficient Parsing for Natural Language: A Fast Algorithm for Practical Systems
Introduction to Functional Programming
Introduction to Functional Programming
Higher Order Attribute Grammars
Proceedings on Attribute Grammars, Applications and Systems
Gregory Lessard: Application of Attribute Grammars to Natural Language Sentence Generation
Proceedings of the International Conference WAGA on Attribute Grammars and their Applications
On the definition of attribute grammar
Semantics-Directed Compiler Generation, Proceedings of a Workshop
Monads for Functional Programming
Advanced Functional Programming, First International Spring School on Advanced Functional Programming Techniques-Tutorial Text
The Elegant Compiler Generator System
Proceedings of the International Conference WAGA on Attribute Grammars and their Applications
Journal of Functional Programming
Techniques for automatic memoization with applications to context-free parsing
Computational Linguistics
An augmented template-based approach to text realization
Natural Language Engineering
Journal of the ACM (JACM)
Enriching partially-specified representations for text realization using an attribute grammar
INLG '00 Proceedings of the first international conference on Natural language generation - Volume 14
Silver: an Extensible Attribute Grammar System
Electronic Notes in Theoretical Computer Science (ENTCS)
Decorated Attribute Grammars: Attribute Evaluation Meets Strategic Programming
CC '09 Proceedings of the 18th International Conference on Compiler Construction: Held as Part of the Joint European Conferences on Theory and Practice of Software, ETAPS 2009
Modular and efficient top-down parsing for ambiguous left-recursive grammars
IWPT '07 Proceedings of the 10th International Conference on Parsing Technologies
Parser combinators for ambiguous left-recursive grammars
PADL'08 Proceedings of the 10th international conference on Practical aspects of declarative languages
An efficient denotational semantics for natural language database queries
NLDB'07 Proceedings of the 12th international conference on Applications of Natural Language to Information Systems
Simple, functional, sound and complete parsing for all context-free grammars
CPP'11 Proceedings of the First international conference on Certified Programs and Proofs
Modular natural language processing using declarative attribute grammars
MICAI'11 Proceedings of the 10th Mexican international conference on Advances in Artificial Intelligence - Volume Part I
Hi-index | 0.00 |
A lazy-evaluation based top-down parsing algorithm has been implemented as a set of higher-order functions (combinators) which support directly-executable specifications of fully general attribute grammars. This approach extends aspects of previous approaches, and allows natural language processors to be constructed as modular and declarative specifications while accommodating ambiguous context-free grammars (including direct and indirect left-recursive rules), augmented with semantic rules with arbitrary attribute dependencies (including dependencies from right). This one-pass syntactic and semantic analysis method has polynomial time and space (w.r.t. the input length) for processing ambiguous input, and helps language developers build and test their models with little concern for the underlying computational methods.