2023-10-23
Cascade: A meta-language for change, cause and effect
Publication
Publication
Live programming brings code to life with immediate and continuous feedback. To enjoy its benefits, programmers need powerful languages and live programming environments for understanding the effects of code modifications on running programs. Unfortunately, the enabling technology that powers these languages, is missing. Change, a crucial enabler for explorative coding, omniscient debugging and version control, is a potential solution. We aim to deliver generic solutions for creating these languages, in particular Domain-Specific Languages (DSLs). We present Cascade, a meta-language for expressing DSLs with interface- and feedback-mechanisms that drive live programming. We demonstrate run-time migrations, ripple effects and live desugaring of three existing DSLs. Our results show that an explicit representation of change is instrumental for how these languages are built, and that cause-and-effect relationships are vital for delivering precise feedback.
Additional Metadata | |
---|---|
, , , , | |
doi.org/10.1145/3623476.3623515 | |
16th ACM SIGPLAN International Conference on Software Language Engineering, SLE 2023 | |
Organisation | Centrum Wiskunde & Informatica, Amsterdam (CWI), The Netherlands |
van Rozen, R. (2023). Cascade: A meta-language for change, cause and effect. In Proceedings of the ACM SIGPLAN International Conference on Software Language Engineering (pp. 149–162). doi:10.1145/3623476.3623515 |