Continuation calculus

B. Geron, J.H. Geuvers

Onderzoeksoutput: Hoofdstuk in Boek/Rapport/CongresprocedureConferentiebijdrageAcademicpeer review

82 Downloads (Pure)

Samenvatting

Programs with control are usually modeled using lambda calculus extended with control operators. Instead of modifying lambda calculus, we consider a different model of computation. We introduce continuation calculus, or CC, a deterministic model of computation that is evaluated using only head reduction, and argue that it is suitable for modeling programs with control. It is demonstrated how to define programs, specify them, and prove them correct. This is shown in detail by presenting in CC a list multiplication program that prematurely returns when it encounters a zero. The correctness proof includes termination of the program. In continuation calculus we can model both call-by-name and call-by-value. In addition, call-by-name functions can be applied to call-by-value results, and conversely.
Originele taal-2Engels
TitelProceedings First Workshop on Control Operators and their Semantics (COS'13, Eindhoven, The Netherlands, June 24-25, 2013)
RedacteurenU. de'Liguoro, A. Saurin
UitgeverijEPTCS
Pagina's66-85
DOI's
StatusGepubliceerd - 2013

Publicatie series

NaamElectronic Proceedings in Theoretical Computer Science
Volume127
ISSN van geprinte versie2075-2180

Vingerafdruk

Duik in de onderzoeksthema's van 'Continuation calculus'. Samen vormen ze een unieke vingerafdruk.

Citeer dit