Sciweavers

ICFP
2004
ACM

Implementing functional logic languages using multiple threads and stores

14 years 11 months ago
Implementing functional logic languages using multiple threads and stores
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. Categories and Subject Descriptors: D.3.2. [Programming Languages]: Language Classifications--Multiparadigm languages, Applicative (functional) languages, Constraint and logic languages; D.3.4. [Programming Languages]: Language Processors--Interpreters, Run-time environments General Terms: Languages...
Andrew P. Tolmach, Sergio Antoy, Marius Nita
Added 13 Dec 2009
Updated 13 Dec 2009
Type Conference
Year 2004
Where ICFP
Authors Andrew P. Tolmach, Sergio Antoy, Marius Nita
Comments (0)