arXiv · 2307.11260
Projectional Editors for JSON-Based DSLs
Abstract
Augmenting text-based programming with rich structured interactions has been explored in many ways. Among these, projectional editors offer an enticing combination of structure editing and domain-specific program visualization. Yet such tools are typically bespoke and expensive to produce, leaving them inaccessible to many DSL and application designers. We describe a relatively inexpensive way to build rich projectional editors for a large class of DSLs -- namely, those defined using JSON. Given any such JSON-based DSL, we derive a projectional editor through (i) a language-agnostic mapping from JSON Schemas to structure-editor GUIs and (ii) an API for application designers to implement custom views for the domain-specific types described in a schema. We implement these ideas in a prototype, Prong, which we illustrate with several examples including the Vega and Vega-Lite data visualization DSLs.
Explore related subjects
Keep this discovery
Andrew McNutt, Ravi Chugh. 2023-07-20. Projectional Editors for JSON-Based DSLs. https://arxiv.org/abs/2307.11260
Cite the original work for its findings. Save a collection to share your selection of sources.