Continuations for Parallel Logic Programming

by Eneia Todoran and Nikolaos S. Papaspyrou

This paper gives denotational models for three logic programming

languages of progressive complexity, adopting the

"logic programming without logic" approach. The first language

is the control ow kernel of sequential Prolog, featuring

sequential composition and backtracking. A committed-choice

concurrent logic language with parallel composition

(parallel AND) and don't care nondeterminism is studied

next. The third language is the core of Warren's basic Andorra

model, combining parallel composition and don't care

nondeterminism with two forms of don't know nondeterminism

(interpreted as sequential and parallel OR) and favoring

deterministic over nondeterministic computation. We show

that continuations are a valuable tool in the analysis and

design of semantic models for both sequential and parallel

logic programming. Instead of using mathematical notation,

we use the functional programming language Haskell

as a metalanguage for our denotational semantics, and employ

monads in order to facilitate the transition from one

language under study to another.

This paper happens to combine several topics that interest me lately - AKL (a precursor of Oz), denotational semantics, continuations, and implementing programming languages in Haskell.

If you share at least some of these interests - take a look!

## Recent comments

7 hours 41 min ago

8 hours 37 min ago

23 hours 2 min ago

23 hours 20 min ago

23 hours 23 min ago

2 days 20 hours ago

3 days 5 hours ago

3 days 12 hours ago

3 days 12 hours ago

3 days 20 hours ago