SPLASH 2022
Mon 5 - Sat 10 December 2022 Auckland, New Zealand

Exploratory programming is a software development style in which code is a medium for prototyping ideas and solutions, and in which even the end-goal can evolve over time. Exploratory programming is valuable in various contexts such as programming education, data science, and end-user programming. However, there is a lack of appropriate tooling and language design principles to support exploratory programming. This paper presents a host language- and object language-independent protocol for exploratory programming akin to the Language Server Protocol. The protocol serves as a basis to develop novel (or extend existing) programming environments for exploratory programming such as computational notebooks and command-line REPLs. An architecture is presented on top of which prototype environments can be developed with relative ease, because existing (language) components can be reused. Our prototypes demonstrate that the proposed protocol is sufficiently expressive to support exploratory programming scenarios as encountered in literature within the software engineering, human-computer interaction and data science domains.

Tue 6 Dec

Displayed time zone: Auckland, Wellington change

10:30 - 12:00
Session 2. Language Workbenches and Programming EnvironmentsSLE at Seminar Room G007
Chair(s): Stefan Marr University of Kent
10:30
24m
Talk
Workbench for Creating Block-Based EnvironmentsResearch PaperIn Person
SLE
Mauricio Verano Merino Vrije Universiteit Amsterdam, Koen van Wijk ICT
DOI Pre-print
10:54
24m
Talk
Partial Parsing for Structured EditorsVirtualResearch Paper
SLE
Tom Beckmann University of Potsdam; Hasso Plattner Institute, Patrick Rein University of Potsdam; Hasso Plattner Institute, Toni Mattis University of Potsdam; Hasso Plattner Institute, Robert Hirschfeld University of Potsdam; Hasso Plattner Institute
DOI Pre-print
11:18
24m
Talk
A Language-Parametric Approach to Exploratory Programming EnvironmentsResearch PaperIn Person
SLE
L. Thomas van Binsbergen University of Amsterdam, Damian Frölich University of Amsterdam, Mauricio Verano Merino Vrije Universiteit Amsterdam, Joey Lai University of Amsterdam, Pierre Jeanjean Inria; University of Rennes; CNRS; IRISA, Tijs van der Storm CWI; University of Groningen, Benoit Combemale University of Rennes; Inria; CNRS; IRISA, Olivier Barais University of Rennes; Inria; CNRS; IRISA
DOI Pre-print
11:42
15m
Talk
Freon: An Open Web Native Language WorkbenchTool PaperVirtual
SLE
Jos Warmer Independent, Anneke Kleppe Independent
DOI