DeepAI AI Chat
Log In Sign Up

An Abstract Machine for Strong Call by Value

by   Małgorzata Biernacka, et al.

We present an abstract machine that implements a full-reducing (a.k.a. strong) call-by-value strategy for pure λ-calculus. It is derived using Danvy et al.'s functional correspondence from Crégut's KN by: (1) deconstructing KN to a call-by-name normalization-by-evaluation function akin to Filinski and Rohde's, (2) modifying the resulting normalizer so that it implements the right-to-left call-by-value function application, and (3) constructing the functionally corresponding abstract machine. This new machine implements a reduction strategy that subsumes the fireball-calculus variant of call by value studied by Accattoli et al. We describe the strong strategy of the machine in terms of a reduction semantics and prove the correctness of the machine using a method based on Biernacka et al.'s generalized refocusing. As a byproduct, we present an example application of the machine to checking term convertibility by discriminating on the basis of their partially normalized forms.


page 1

page 2

page 3

page 4


Strong Call by Value is Reasonable for Time

The invariance thesis of Slot and van Emde Boas states that all reasonab...

Strong Call-by-Value and Multi Types

This paper provides foundations for strong (that is, possibly under abst...

The Dynamic Geometry of Interaction Machine: A Token-Guided Graph Rewriter

In implementing evaluation strategies of the lambda-calculus, both corre...

Efficient Implementation of Evaluation Strategies via Token-Guided Graph Rewriting

In implementing evaluation strategies of the lambda-calculus, both corre...

Strict Ideal Completions of the Lambda Calculus

The infinitary lambda calculi pioneered by Kennaway et al. extend the ba...

Product Kanerva Machines: Factorized Bayesian Memory

An ideal cognitively-inspired memory system would compress and organize ...

Formal Small-step Verification of a Call-by-value Lambda Calculus Machine

We formally verify an abstract machine for a call-by-value lambda-calcul...