LIFE, a Natural Language for Natural Language
Hassan Aı̈t-Kaci, Patrick D. Lincoln, Roger Nasr, Raymonde Guindon, Jon L. Schlossberg, David Plummer · 2007
Experimenting with formalisms for Natural Language Processing involves costly programming overhead in conventional computing idioms, even as “advanced” as Lisp or Prolog. LIFE (Logic, Inheritance, Functions, and Equations) is a programming language which incorporates an elegant type system which supports a powerful facility for structured type inheritance. Also, LIFE reconciles styles from Functional Programming and Logic Programming by implicitly delegating control to an automatic suspension mechanism. This allows interleaving interpretation of relational and functional expressions which specify abstract structural dependencies on objects. Together, these features provide a convenient and versatile power of abstraction for very high-level expression of constrained data structures. Computational linguistics is a discipline where such abstractions are particularly useful. Therefore, obvious convenience is offered by LIFE for experimentation to the computational linguist, who becomes relieved from burdensome yet extrinsic programming complications. We presently attempt to show how LIFE may be a natural computer language for processing natural human languages.