Defunctionalization at work
O Danvy, LR Nielsen - Proceedings of the 3rd ACM SIGPLAN …, 2001 - dl.acm.org
Reynolds's defunctionalization technique is a whole-program transformation from higher-
order to first-order functional programs. We study practical applications of this transformation …
order to first-order functional programs. We study practical applications of this transformation …
Distilling abstract machines
It is well-known that many environment-based abstract machines can be seen as strategies
in lambda calculi with explicit substitutions (ES). Recently, graphical syntaxes and linear …
in lambda calculi with explicit substitutions (ES). Recently, graphical syntaxes and linear …
On the relative usefulness of fireballs
B Accattoli, CS Coen - … 30th Annual ACM/IEEE Symposium on …, 2015 - ieeexplore.ieee.org
In CSL-LICS 2014, Accattoli and Dal Lago [1] showed that there is an implementation of the
ordinary (ie strong, pure, call-by-name) λ-calculus into models like RAM machines which is …
ordinary (ie strong, pure, call-by-name) λ-calculus into models like RAM machines which is …
Defunctionalized interpreters for programming languages
O Danvy - ACM Sigplan Notices, 2008 - dl.acm.org
This document illustrates how functional implementations of formal semantics (structural
operational semantics, reduction semantics, small-step and big-step abstract machines …
operational semantics, reduction semantics, small-step and big-step abstract machines …
Foundations for programming and implementing effect handlers
D Hillerström - 2022 - era.ed.ac.uk
First-class control operators provide programmers with an expressive and efficient means for
manipulating control through reification of the current control state as a first-class object …
manipulating control through reification of the current control state as a first-class object …
An operational foundation for delimited continuations in the CPS hierarchy
M Biernacka, D Biernacki… - Logical Methods in …, 2005 - lmcs.episciences.org
We present an abstract machine and a reduction semantics for the lambda-calculus
extended with control operators that give access to delimited continuations in the CPS …
extended with control operators that give access to delimited continuations in the CPS …
Subtyping delimited continuations
M Materzok, D Biernacki - ACM SIGPLAN Notices, 2011 - dl.acm.org
We present a type system with subtyping for first-class delimited continuations that
generalizes Danvy and Filinski's type system for shift and reset by maintaining explicit …
generalizes Danvy and Filinski's type system for shift and reset by maintaining explicit …
From reduction-based to reduction-free normalization
O Danvy - International School on Advanced Functional …, 2008 - Springer
We document an operational method to construct reduction-free normalization functions.
Starting from a reduction-based normalization function from a reduction semantics, ie, the …
Starting from a reduction-based normalization function from a reduction semantics, ie, the …
A syntactic correspondence between context-sensitive calculi and abstract machines
M Biernacka, O Danvy - Theoretical Computer Science, 2007 - Elsevier
We present a systematic construction of environment-based abstract machines from context-
sensitive calculi of explicit substitutions, and we illustrate it with ten calculi and machines for …
sensitive calculi of explicit substitutions, and we illustrate it with ten calculi and machines for …
What If We Don't Pop the Stack? The Return of 2nd-Class Values
Using a stack for managing the local state of procedures as popularized by Algol is a simple
but effective way to achieve a primitive form of automatic memory management. Hence, the …
but effective way to achieve a primitive form of automatic memory management. Hence, the …