Renamingless Capture-Avoiding Substitution for Definitional Interpreters

Casper Bach Poulsen*

*Corresponding author for this work

Research output: Chapter in Book/Conference proceedings/Edited volumeConference contributionScientificpeer-review

36 Downloads (Pure)

Abstract

Substitution is a common and popular approach to implementing name binding in definitional interpreters. A common pitfall of implementing substitution functions is variable capture. The traditional approach to avoiding variable capture is to rename variables. However, traditional renaming makes for an inefficient interpretation strategy. Furthermore, for applications where partially-interpreted terms are user facing it can be confusing if names in uninterpreted parts of the program have been changed. In this paper we explore two techniques for implementing capture avoiding substitution in definitional interpreters to avoid renaming.

Original languageEnglish
Title of host publicationEelco Visser Commemorative Symposium, EVCS 2023
EditorsRalf Lammel, Peter D. Mosses, Friedrich Steimann
PublisherSchloss Dagstuhl- Leibniz-Zentrum fur Informatik GmbH, Dagstuhl Publishing
Number of pages10
ISBN (Electronic)9783959772679
DOIs
Publication statusPublished - 2023
Event2023 Eelco Visser Commemorative Symposium, EVCS 2023 - Delft, Netherlands
Duration: 5 Apr 20235 Apr 2023

Publication series

NameOpenAccess Series in Informatics
Volume109
ISSN (Print)2190-6807

Conference

Conference2023 Eelco Visser Commemorative Symposium, EVCS 2023
Country/TerritoryNetherlands
CityDelft
Period5/04/235/04/23

Keywords

  • Capture-avoiding substitution
  • definitional interpreter
  • lambda calculus

Fingerprint

Dive into the research topics of 'Renamingless Capture-Avoiding Substitution for Definitional Interpreters'. Together they form a unique fingerprint.

Cite this