Academia.eduAcademia.edu

A domain-theoretic approach to functional and logic programming

1992, Journal of Functional Programming

Abstract

The integration of functional and logic programming languages has been a topic of great interest in the last decade. Many proposals have been made, yet none is completely satisfactory especially in the context of higher order functions and lazy evaluation. This paper addresses these shortcomings via a new approach:domain theoryas a common basis for functional and logic programming. Our integrated language remains essentially within the functional paradigm. The logic programming capability is provided byset abstraction(via Zermelo-Frankel set notation), using the Herbrand universe as a set abstraction generator, but for efficiency reasons our proposed evaluation procedure treats this generator's enumeration parameter as a logical variable. The language is defined in terms of (computable) domain-theoretic constructions and primitives, using the lower (or angelic) powerdomain to model the set abstraction facility. The result is a simple, elegant and purely declarative language that...