Derivation of a Virtual Machine for
Four Variants of Delimited-Control Operators

Maika Fujii and Kenichi Asai

May 3, 2021

OCaml source code for the following paper presented at FSCD 2021:
Maika Fujii and Kenichi Asai "Derivation of a Virtual Machine for Four Variants of Delimited-Control Operators," 6th International Conference on Formal Structures for Computation and Deduction, FSCD 2021, July 17-24, 2021, Buenos Aires, Argentina (Virtual Conference), volume 195 of LIPIcs, pages 16:1--16:19, doi:10.4230/LIPIcs.FSCD.2021.16.
All files in zip format. To compile, you need OCamlMakefile. Example inputs:
1 + reset (reset (2 * reset ((fun y -> shift h -> y)
                    (shift f -> shift g -> 3 + f 4))))

1 + reset (reset (2 * reset ((fun y -> control h -> y)
                    (control f -> control g -> 3 + f 4))))

1 + reset (reset (2 * reset ((fun y -> shift0 h -> y)
                    (shift0 f -> shift0 g -> 3 + f 4))))

1 + reset (reset (2 * reset ((fun y -> control0 h -> y)
                    (control0 f -> control0 g -> 3 + f 4))))

This document was translated from LATEX by HEVEA.