Constructing natural language interpreters in a lazy functional language
The Computer Journal - Special issue on Lazy functional programming
Conception, evolution, and application of functional programming languages
ACM Computing Surveys (CSUR)
An introduction to functional programming
An introduction to functional programming
A gentle introduction to Haskell
ACM SIGPLAN Notices - Haskell special issue
Report on the programming language Haskell: a non-strict, purely functional language version 1.2
ACM SIGPLAN Notices - Haskell special issue
Relational program derivation and context-free language recognition
A classical mind
Using types to parse natural language
FP'95 Proceedings of the 1995 international conference on Functional Programming
Deductive Parsing of Visual Languages
LACL '01 Proceedings of the 4th International Conference on Logical Aspects of Computational Linguistics
Hi-index | 0.01 |
We describe how type information can be used to infer grammatical structure. This is in contrast to conventional type inference in programming languages where the roles are reversed, structure determining type. Our work is based on Applicative Universal Grammar (AUG), a linguistic theory that views the formation of phrase in a form that is analogous to function application in a programming language. We descibe our overall methodology including its linguistic and philosophical underpinnings. The natural language parser that we have constructed should be interesting to computer scientists in the way in which AUG relates to types and combinatory calculus, and to linguists in the way in which a very simple, brute force parsing strategy performs surprisingly well in both performance and accuracy. Both computer scientists and linguists should also be interested in the convergence of the theory of functional programming languages and AUG with regard to their conceptual bases. Both have been motivated by entirely different goals and have develop ed independently, but they are rooted in a common conceptual system of an applicative calculus.