Affiliation:
1. Portland State University, Portland, OR
Abstract
Recent functional logic languages such as Curry and Toy combine lazy functional programming with logic programming features including logic variables, non-determinism, unification, narrowing, fair search, concurrency, and residuation. In this paper, we show how to extend a conventional interpreter for a lazy functional language to handle these features by adding support for reference cells, process-like and thread-like concurrency mechanisms, and a novel form of multi-versioned store. Our interpretation scheme is practical, and can be easily extended to perform compilation. The language specified by our interpreter is designed so that programs are deterministic in a novel and useful sense.
Publisher
Association for Computing Machinery (ACM)
Subject
Computer Graphics and Computer-Aided Design,Software
Reference32 articles.
1. E.
Albert M.
Hanus F.
Huch J.
Oliver and
G.
Vidal
.
Operational semantics for functional logic languages. In M. Comini and M. Falaschi editors Proc. Int'l Workshop on Functional and (Constraint) Logic Programming volume
76
of
Electronic Notes in Theoretical Computer Science
.
Elsevier Science Publishers 2002
.]] E. Albert M. Hanus F. Huch J. Oliver and G. Vidal. Operational semantics for functional logic languages. In M. Comini and M. Falaschi editors Proc. Int'l Workshop on Functional and (Constraint) Logic Programming volume 76 of Electronic Notes in Theoretical Computer Science. Elsevier Science Publishers 2002.]]
2. An implementation of narrowing strategies
3. K.-F. Faxén. Analysing Transforming and Compiling Lazy Functional Programs. PhD thesis Department of Teleinformatics Royal Institute of Technology June 1997.]] K.-F. Faxén. Analysing Transforming and Compiling Lazy Functional Programs. PhD thesis Department of Teleinformatics Royal Institute of Technology June 1997.]]
Cited by
2 articles.
订阅此论文施引文献
订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献