Implementing a Lazy Functional Logic Language with Disequality Constraints
نویسندگان
چکیده
In this paper, we investigate an implementation of a lazy functional logic language (in particular the language BABEL MR88, MR92]) which uses disequality constraints for solving equations and building answers. We specify a new operational semantics which combines lazy narrowing with disequality constraints and we deene an abstract machine tailored to the execution of BABEL programs according to this semantics. The machine is designed as a quite natural extension of a lazy graph narrowing machine MKLR90]. Disjunctions of disequalities are handled using the backtracking mechanism.
منابع مشابه
Implementing Disequality in the Lazy Functional Logic Language Babel
x Abstract In this paper 1 , we investigate an implementation of a lazy functional logic language (in particular the language BABEL MR88,MR92]) which uses disequality constraints for solving equations and building answers. We specify a new operational semantics which combines lazy narrowing with disequality constraints and we deene an abstract machine tailored to the execution of BABEL programs...
متن کاملCombining Lazy Narrowing with Disequality Constraints
We investigate an extension of a lazy functional logic language , which uses term disequations both in programs and in computed answers. The semantic properties of the language are derived from the fact that it can be viewed as an instance of the CFLP(X)-scheme proposed in Lo92] for constraint functional logic programming. In particular , the operational semantics for CFLP(X) { so called lazy c...
متن کاملProgramming with TOY(FD)
In [1] we presented the language T OY(FD) that integrates the best features of existing functional and logic languages, as well as finite domain (FD) constraint solving. We believe that T OY(FD) is more flexible and expressive than the existing approaches of constraint logic programming on finite domain (CLP (FD) ) as it integrates FD constraint solving, lazy evaluation, higher order applicatio...
متن کاملReal Constraints within a Functional Logic Language
We present a declarative language { CFLP(R) { which integrates lazy functional programming, logic programming and constraint solving over real numbers. Both a (higher order, polymorphic, lazy) functional language and (pure) CLP(R) can be isolated as subsets of our language. Through several examples we attempt to demonstrate the interest of CFLP(R). The execution mechanism of the language consis...
متن کاملOn the cooperation of the constraint domains , R, and F in CFLP
This paper presents a computational model for the cooperation of constraint domains and an implementation for a particular case of practical importance. The computational model supports declarative programming with lazy and possibly higher-order functions, predicates, and the cooperation of different constraint domains equipped with their respective solvers, relying on a so-called constraint fu...
متن کامل