Download PDFOpen PDF in browser

Implementing a stepper using delimited continuations

13 pagesPublished: March 27, 2016

Abstract

A stepper is a tool that displays all the steps of a program's execution. To implement a stepper, we need to reconstruct each intermediate program from the current redex and the evaluation context. We regard evaluation contexts as delimited continuations and capture them using the control operators shift and reset. This enables us to implement a stepper concisely by writing an evaluator that is close to the standard big-step interpreter. Our implementation is a non-trivial application of shift and reset.

Keyphrases: delimited continuations, shift and reset, stepper

In: James H. Davenport and Fadoua Ghourabi (editors). SCSS 2016. 7th International Symposium on Symbolic Computation in Software Science, vol 39, pages 42-54.

BibTeX entry
@inproceedings{SCSS2016:Implementing_stepper_using_delimited,
  author    = {Youyou Cong and Kenichi Asai},
  title     = {Implementing a stepper using delimited continuations},
  booktitle = {SCSS 2016. 7th International Symposium on  Symbolic Computation in Software Science},
  editor    = {James H. Davenport and Fadoua Ghourabi},
  series    = {EPiC Series in Computing},
  volume    = {39},
  publisher = {EasyChair},
  bibsource = {EasyChair, https://easychair.org},
  issn      = {2398-7340},
  url       = {/publications/paper/7qlb},
  doi       = {10.29007/l2wb},
  pages     = {42-54},
  year      = {2016}}
Download PDFOpen PDF in browser