Typed Image-based Programming with Structure Editing
Jonathan Edwards (independent), Tomas Petricek (University of Kent)

TL;DR
This paper introduces a method for enabling collaboration in image-based programming systems by using static types and structure editing to manage schema changes and adapt data automatically.
Contribution
It presents a novel theory for version control in structure editing, facilitating schema evolution and collaboration in image-based programming environments.
Findings
Proposes a static type-based approach to handle schema changes.
Develops a theory for version control in structure editing.
Demonstrates potential for improved collaboration in image-based programming.
Abstract
Many beloved programming systems are image-based: self-contained worlds that persist both code and data in a single file. Examples include Smalltalk, LISP, HyperCard, Flash, and spreadsheets. Image-based programming avoids much of the complexity of modern programming technology stacks and encourages more casual and exploratory programming. However conventional file-based programming has better support for collaboration and deployment. These problems have been blamed for the limited commercial success of Smalltalk. We propose to enable collaboration in image-based programming via types and structure editing. We focus on the problem of schema change on persistent data. We turn to static types, which paradoxically require more schema change but also provide a mechanism to express and execute those changes. To determine those changes we turn to structure editing, so that we can capture…
Peer Reviews
No public reviews on file for this paper yet. If you reviewed it on a platform where reviews are public (OpenReview, ICLR, NeurIPS, ICML), you can paste yours below so the community can read it here.
Videos
No videos yet. Explain this paper in a talk, walkthrough, or lecture? Add one.
Taxonomy
TopicsScientific Computing and Data Management · Cloud Computing and Resource Management · Peer-to-Peer Network Technologies
