A Generic Back-End for Exploratory Programming

Abstract

Exploratory programming is a form of incremental program development in which the programmer can try and compare definitions, receives immediate feedback and can simultaneously experiment with the language, the program and input data. Read-Eval-Print-Loop interpreters (REPLs) and computational notebooks are popular tools for exploratory programming. However, their usability, capabilities and user-friendliness are strongly dependent on the underlying interpreter and, in particular, on the ad hoc engineering required to ready the underlying interpreter for incremental program development. To break this dependency, this paper adopts a principled approach and implements a so-called exploring interpreter as a back-end to support various development environments for exploratory programming.

Publication
Trends in Functional Programming
L. Thomas van Binsbergen
L. Thomas van Binsbergen
Associate Professor

Thomas van Binsbergen is an Associate Professor in software engineering with a specialisation in the operational semantics of programming languages. Topics of interest include modular language specifications and implementations. Applications areas are automated legal reasoning in multi-domain systems and domain-specific languages for domains such as regulatory and legal, programmable networks, and software language engineering. I am tenured at the University of Amsterdam and situated in the Complex-Cyber Infrastructure research group of the Informatics Institute where I lead the Programming Languages and Verification team.

Related