Abstract
We present the functional logic language Higher Order Babel which provides higher order unification for parameter passing and solving equations. When searching for a function which solves an equation, not only “polynomial functions” but also defined functions are taken into account. In contrast to all other programming languages which support higher order unification HO-Babel replaces the expensive β-reduction by the much more efficient combinator reduction. Moreover, HO-Babel is more homogeneous since it does not distinguish functions which only represent data structures and defined functions which are equipped with the full execution mechanism of the language.
Preview
Unable to display preview. Download preview PDF.
References
H. Aït-Kaci: Warren's Abstract Machine, MIT Press, 1991.
D.J. Dougherty: Higher-Order Unification via Combinators, TCS 114, 273–298, 1993.
A. Felty: A Logic Programming Approach to Implementing Higher-Order Term Rewriting, LNAI 596, Springer, 135–161, 1992.
J.C. González-Moreno, M.T. Hortalá-González, M. Rodríguez-Artalejo: On the Completeness of Narrowing as the Operational Semantics of Functional Logic Programming, Proceedings GSL'92, LNCS 702, Springer, 216–230, 1993.
M. Hanus: The Integration of Functions into Logic, From Theory to Practice, Journal of Logic Programming 19&20, 583–628, 1994.
J.R. Hindley, J.P. Seldin: Introduction to Combinators and λ-Calculus, Cambridge University Press, 1990.
G.P. Huet: A Unification Algorithm for Typed λ-Calculus, TCS 1, 27–57, 1975.
H. Kuchen, R. Loogen, J.J. Moreno-Navarro, M. Rodriguez-Artalejo: Graph-based Implementation of a Functional Logic Language, Procs. ESOP'90, LNCS 432, 1990, 271–290.
R. Loogen: From Reduction Machines to Narrowing Machines, TAPSOFT'91, LNCS 494, 1991, 438–457.
R. Milner: A Theory of Type Polymorphism in Programming, JCSS 17(3), 1978, 348–375.
J.J. Moreno-Navarro, M. Rodriguez-Artalejo: Logic Programming with Functions and Predicates: The Language Babel, JLP, 12:189–223, 1992.
G. Nadathur, B. Jayaraman: Towards a WAM Model for λ-Prolog, Proceedings of ICLP, MIT Press, 1180–1198, 1989.
G. Nadathur, B. Jayaraman, K. Kwon: Scoping Constructs in Logic Programming, Implementation Problems and their Solution, JLP, Nov. 1995.
G. Nadathur, D. Miller: An Overview of λ-Prolog, Proceedings 5th ICLP, MIT Press, 810–827, 1988.
S. Peyton Jones: The Implementation of Functional Programming Languages, Prentice-Hall, 1987.
R. Pareschi, D. Miller: Extending Definite Clause Grammars with Scoping Constructs, Proceedings ICLP'90, MIT Press, 373–389, 1990.
C. Prehofer: Higher Order Narrowing, Proc. LICS'94, IEEE, 507–516, 1994.
W. Snyder, J. Gallier: Higher-Order Unification Revisited: Complete Sets of Transformations, J. Symbolic Computation 8, 101–140, 1989.
Author information
Authors and Affiliations
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag
About this paper
Cite this paper
Kuchen, H., Anastasiadis, J. (1996). Higher Order Babel: Language and implementation. In: Dyckhoff, R., Herre, H., Schroeder-Heister, P. (eds) Extensions of Logic Programming. ELP 1996. Lecture Notes in Computer Science, vol 1050. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60983-0_13
Download citation
DOI: https://doi.org/10.1007/3-540-60983-0_13
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60983-4
Online ISBN: 978-3-540-49751-6
eBook Packages: Springer Book Archive