Reduction Strategies in the Lambda Calculus and Their Implementation through Derivable Abstract Machines: Introduction

Fuente: arXiv
Enregistré dans:
Détails bibliographiques
Auteur principal: Drab, Tomasz
Format: Preprint
Publié: 2024
Sujets:
Accès en ligne:
Tags: Ajouter un tag
Pas de tags, Soyez le premier à ajouter un tag!
_version_ 1866911883224678400
author Drab, Tomasz
author_facet Drab, Tomasz
contents 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.
format Preprint
id arxiv_https___arxiv_org_abs_2405_12586
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Reduction Strategies in the Lambda Calculus and Their Implementation through Derivable Abstract Machines: Introduction
Drab, Tomasz
Programming Languages
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.
title Reduction Strategies in the Lambda Calculus and Their Implementation through Derivable Abstract Machines: Introduction
topic Programming Languages
url https://arxiv.org/abs/2405.12586