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 …
[PDF][PDF] Refocusing in reduction semantics
O Danvy, LR Nielsen - BRICS Report Series, 2004 - brics.dk
The evaluation function of a reduction semantics (ie, a small-step operational semantics with
an explicit representation of the reduction context) is canonically defined as the transitive …
an explicit representation of the reduction context) is canonically defined as the transitive …
Strong call-by-value is reasonable, implosively
B Accattoli, A Condoluci… - 2021 36th Annual ACM …, 2021 - ieeexplore.ieee.org
Whether the number of β-steps in the λ-calculus can be taken as a reasonable time cost
model (that is, polynomially related to the one of Turing machines) is a delicate problem …
model (that is, polynomially related to the one of Turing machines) is a delicate problem …
Matching logic
G Rosu - Logical Methods in Computer Science, 2017 - lmcs.episciences.org
This paper presents matching logic, a first-order logic (FOL) variant for specifying and
reasoning about structure by means of patterns and pattern matching. Its sentences, the …
reasoning about structure by means of patterns and pattern matching. Its sentences, the …
A language designer's workbench: a one-stop-shop for implementation and verification of language designs
The realization of a language design requires multiple artifacts that redundantly encode the
same information. This entails significant effort for language implementors, and often results …
same information. This entails significant effort for language implementors, and often results …
A rewriting logic approach to operational semantics
This paper shows how rewriting logic semantics (RLS) can be used as a computational logic
framework for operational semantic definitions of programming languages. Several …
framework for operational semantic definitions of programming languages. Several …
Checking reachability using matching logic
G Rosu, A Stefanescu - … of the ACM international conference on Object …, 2012 - dl.acm.org
This paper presents a verification framework that is parametric in a (trusted) operational
semantics of some programming language. The underlying proof system is language …
semantics of some programming language. The underlying proof system is language …
Environments and the complexity of abstract machines
B Accattoli, B Barras - Proceedings of the 19th International Symposium …, 2017 - dl.acm.org
Abstract machines for functional languages rely on the notion of environment, a data
structure storing the previously encountered and delayed beta-redexes. This paper provides …
structure storing the previously encountered and delayed beta-redexes. This paper provides …
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 …