In-line Compositional Visual Programming

Abstract

Concatenative programming inherently expresses composition of sub-tasks of a pipeline, but one uncommonly seen model of this paradigm includes all data values inline within the program. A visual environment for editing and evaluating programs in this model would inherently display state in place, and allow for easy tracing of data flow through the program by watching the values literally move as evaluation steps took place. We propose a visual approach for programming in this style, with function calls and data values interleaved on a single “track”, with specific concrete arguments always adjacent when a function term is evaluated and various affordances for editing, evaluating, and debugging. We then show how extensions to this model to multiple tracks can ease programming in the model and even make available some more inscrutable programming-language features, such as concurrency and effect systems, in a more accessible way.

Authors

Michael Homer

Published in

Programming Experience Workshop (PX), 2024

Resources

PDF
mwh.nz/pdf/px2024
this page
mwh.nz/pubs/px2024
Michael Homer — 2024 3c0a2da6