Cascade: a Meta-Language for Change, Cause and EffectResearch Paper
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.
Riemer van Rozen is a lecturer and researcher at the Software Analysis and Transformation group of Centrum Wiskunde & Informatica (CWI). Since 2011, he has collaborated with industry in several applied research projects on languages and tools that speed up development and improve software quality. His research focuses on generic solutions for domain-specific languages and live programming environments in general, and automated game design in particular. PhD Dissertation: R.A. van Rozen. “Languages of Games and Play: Automating Game Design & Enabling Live Programming”, University of Amsterdam, Feb 2020. link.
Tue 24 OctDisplayed time zone: Lisbon change
09:00 - 10:30 | Live programming and debuggingSLE at Room II Chair(s): Vadim Zaytsev University of Twente, Netherlands | ||
09:00 30mTalk | Temporal Breakpoints for Multiverse DebuggingResearch Paper SLE Matthias Pasquier Ertosgener, Ciprian Teodorov ENSTA Bretagne, Frédéric Jouault ERIS Team, ESEO , France, Matthias Brun , Luka Le Roux Lab-STICC CNRS UMR 6285, ENSTA Bretagne, Loïc Lagadec Lab-STICC CNRS UMR 6285, ENSTA Bretagne DOI | ||
09:30 30mTalk | Cross-Level Debugging for Static AnalysersResearch Paper SLE Mats Van Molle Vrije Universiteit Brussel, Bram Vandenbogaerde Vrije Universiteit Brussel, Coen De Roover Vrije Universiteit Brussel DOI Pre-print | ||
10:00 30mTalk | Cascade: a Meta-Language for Change, Cause and EffectResearch Paper SLE Riemer van Rozen CWI DOI |