A simple and efficient implementation of strong call by need by an abstract machine

M Biernacka, W Charatonik, T Drab - Proceedings of the ACM on …, 2022 - dl.acm.org
We present an abstract machine for a strong call-by-need strategy in the lambda calculus.
The machine has been derived automatically from a higher-order evaluator that uses the …

A synthetic operational account of call-by-need evaluation

O Danvy, I Zerny - Proceedings of the 15th symposium on principles and …, 2013 - dl.acm.org
We present the first operational account of call by need that connects syntactic theory and
implementation practice. Syntactic theory: the storeless operational semantics using syntax …

Deriving an abstract machine for strong call by need

M Biernacka, W Charatonik - 4th International Conference on …, 2019 - drops.dagstuhl.de
Strong call by need is a reduction strategy for computing strong normal forms in the lambda
calculus, where terms are fully normalized inside the bodies of lambda abstractions and …

On inter-deriving small-step and big-step semantics: A case study for storeless call-by-need evaluation

O Danvy, K Millikin, J Munk, I Zerny - Theoretical Computer Science, 2012 - Elsevier
Starting from the standard call-by-need reduction for the λ-calculus that is common to Ariola,
Felleisen, Maraist, Odersky, and Wadler, we inter-derive a series of hygienic semantic …

Automating the Functional Correspondence between Higher-Order Evaluators and Abstract Machines

M Buszka, D Biernacki - … Symposium on Logic-Based Program Synthesis …, 2021 - Springer
The functional correspondence is a manual derivation technique transforming higher-order
evaluators into the semantically equivalent abstract machines. The transformation consists …

[图书][B] Lazy Evaluation: From natural semantics to a machine-checked compiler transformation

J Breitner - 2016 - books.google.com
In order to solve a long-standing problem with list fusion, a new compiler transformation,"
Call Arity" is developed and implemented in the Haskell compiler GHC. It is formally proven …

Certified abstract machines for skeletal semantics

G Ambal, S Lenglet, A Schmitt - Proceedings of the 11th ACM SIGPLAN …, 2022 - dl.acm.org
Skeletal semantics is a framework to describe semantics of programming languages. We
propose an automatic generation of a certified OCaml interpreter for any language written in …

An operational foundation for the tactic language of Coq

W Jedynak, M Biernacka, D Biernacki - Proceedings of the 15th …, 2013 - dl.acm.org
We introduce a semantic toolbox for Ltac, the tactic language of the popular Coq proof
assistant. We present three formats of operational semantics, each of which has its use in …

Coinductive Natural Semantics for Compiler Verification in Coq

A Zúñiga, G Bel-Enguix - Mathematics, 2020 - mdpi.com
(Coinductive) natural semantics is presented as a unifying framework for the verification of
total correctness of compilers in Coq (with the feature that a verified compiler can be …

Implementing a secure abstract machine

A Larmuseau, M Patrignani, D Clarke - Proceedings of the 31st Annual …, 2016 - dl.acm.org
Abstract machines are both theoretical models used to study language properties and
practical models of language implementations. As with all language implementations …