×

Delimited continuations for Prolog. (English) Zbl 1312.68037

Summary: Delimited continuations are a famous control primitive that originates in the functional programming world. It allows the programmer to suspend and capture the remaining part of a computation in order to resume it later. We put a new Prolog-compatible face on this primitive and specify its semantics by means of a meta-interpreter. Moreover, we establish the power of delimited continuations in Prolog with several example definitions of high-level language features. Finally, we show how to easily and effectively add delimited continuations support to the WAM.

MSC:

68N17 Logic programming

Software:

ALGOL 68
Full Text: DOI

References:

[1] An Abstract Prolog Instruction Set (1983)
[2] TPLP 12 pp 97– (2012)
[3] TPLP 12 pp 157– (2012)
[4] A useful extension to prolog’s definite clause grammar notation 24 pp 132– (1989)
[5] TPLP 12 pp 67– (2012)
[6] TPLP 12 pp 5– (2012)
[7] ALGOL 68 Implementation pp 199– (1970)
[8] Warren’s Abstract Machine: A Tutorial Reconstruction (1991)
[9] Information and Computation 93 (1991)
This reference list is based on information provided by the publisher or from digital mathematics libraries. Its items are heuristically matched to zbMATH identifiers and may contain data conversion errors. In some cases that data have been complemented/enhanced by data from zbMATH Open. This attempts to reflect the references listed in the original paper as accurately as possible without claiming completeness or a perfect matching.