Summary: A Virtual Machine
for Functional Logic Computations #
Sergio Antoy 1 , Michael Hanus 2 , Jimeng Liu 1 , and Andrew Tolmach 1
1 Portland State University, Computer Science Dept.
P.O. Box 751, Portland, OR 97207, U.S.A.
2 ChristianAlbrechtsUniversit˜ at Kiel, Institut f˜ ur Informatik
Olshausenstr. 40, D24098 Kiel, Germany.
Grelck et al. (Eds.): IFL 2004, LNCS 3474, pp. 108125, 2005
# SpringerVerlag Berlin Heindelberg 2005
Abstract. We describe the architecture of a virtual machine for executing func
tional logic programming languages. A distinguishing feature of our machine is
that it preserves the operational completeness of nondeterministic programs by
concurrently executing a pool of independent computations. Each computation
executes only rootneeded sequential narrowing steps. We describe the machine's
architecture and instruction set, and show how to compile overlapping inductively
sequential programs to sequences of machine instructions. The machine has been
implemented in Java and in Standard ML.