LISP and Symbolic Computation, 3(3)245-288
LogScheme: Integrating Logic Programming into Scheme
Erik Ruf, Center for Integrated Systems, Stanford University, Stanford, CA 94305-4070
Daniel Weise, Center for Integrated Systems, Stanford University, Stanford, CA 94305-4070
|
Abstract: This research aims to fully integrate logic
programming into the programming language Scheme. We use a minimalist
approach, based on the observation that the fundamental aspects of
logic programming, nondeterminism and unification, are separable both
in concept and in implementation. We have found that only two new
primitive functions and one new special form need to be added to
Scheme to achieve this integration. Using these primitives, we can
write programs in the style of Scheme, Icon, Prolog, or any mixture
thereof. We have found that a style of programming that uses both
logical and functional techniques can be more powerful than the use of
either technique alone. Because Scheme has side effects and
continuations, this research addresses different problems and choices
than previous research [2, 16, 19] on merging functional and logical
languages.
|
This article is not available online.
|
|