CMU Artificial Intelligence Repository
LP: Lambda Prolog
Lambda Prolog is an experimental implementation of a higher-order
logic programming language. It extends Prolog with a polymorphic type
system, higher-order programming, simply typed lambda-terms as data
structures, higher-order unification, scoping mechanisms for program
clauses and parameters, and modules and data abstraction. These new
features are provided in a principled fashion by extending the
classical first-order theory of Horn clauses to the intuitionistic
higher-order theory of hereditary Harrop formulas.
Efficiency was not a consideration in the implementation, so this
version of Lambda Prolog is slow. For a faster and more robust
implementation of the language, see eLP (Ergo Lambda Prolog).
The addition of higher-order unification to a programming language
should be useful in proof systems, program transformation systems,
and natural language understanding systems.
Version: 2.7 (10-NOV-88)
Ports: C-Prolog and Quintus Prolog
Copying: Copyright (c) 1988 by Dale Miller and Gopalan Nadathur
CD-ROM: Prime Time Freeware for AI, Issue 1-1
Author(s): Dale Miller
Computer and Information Science
University of Pennsylvania
Philadelphia, PA 19104
Computer Science Department
Durham, NC 27706
Contact: Gopalan Nadathur
Interpreters!Lambda Prolog, LP, Lambda Prolog,
Programming Languages!Prolog, Prolog!Implementations
Gopalan Nadathur and Dale A. Miller, "An Overview of Lambda Prolog", Duke
Tech Report CS-1988-14. Also appears in the proceedings of the Fifth
International Conference Symposium on Logic Programming, Seattle,
Dale A. Miller and Gopalan Nadathur, "Higher-order logic programming",
in Proceedings of the 3rd International Conference on Logic
Programming, pages 448-462, London 1986.
Gopalan Nadathur, "A Higher-Order Logic as a Basis for Logic
Programming", Thesis, University of Pennsylvania, 1987.
Last Web update on Mon Feb 13 10:35:01 1995