Reduction Strategies in the Lambda Calculus and Their Implementation through Derivable Abstract Machines: Introduction
<|reference_start|>Reduction Strategies in the Lambda Calculus and Their Implementation through Derivable Abstract Machines: Introduction: The lambda calculus since more than half a century is a model and foundation of functional programming languages. However, lambda expressions can be evaluated with different reduction strategies and thus, there is no fixed cost model nor one canonical implementation for all applications of the lambda calculus.   This article is an introduction to a dissertation is composed of four conference papers where: we present a systematic survey of reduction strategies of the lambda calculus; we take advantage of the functional correspondence as a tool for studying implementations of the lambda calculus by deriving an abstract machine for a precisely identified strong call-by-value reduction strategy; we improve it to obtain an efficient abstract machine for strong call by value and provide a time complexity analysis for the new machine with the use of a potential function; and we present the first provably efficient abstract machine for strong call by need.<|reference_end|>
@article{drab2024reduction,
    title={Reduction Strategies in the Lambda Calculus and Their Implementation
  through Derivable Abstract Machines: Introduction},
    author={Tomasz Drab},
    journal={arXiv preprint arXiv:2405.12586},
    year={2024},
    archivePrefix={arXiv},
    eprint={2405.12586},
    primaryClass={cs.PL}
}