Challenges in the Design and Implementation of Teaching Languages for EDSLs
summary
Examines concrete failures and prototypes: why shallow EDSLs (examples: miniKanren, Mimi in R) give students opaque stack traces, infinite loops, and host-versus-DSL confusion; documents teacher workflows and maintenance costs for Racket-style teaching-language families; demonstrates a prototype syntax-spec tool that yields DSL-level syntax and IDE errors and discusses needs for domain visualizations, localized error text, and upgradeable teaching-language deltas tied to evolving host libraries.
AI-written summary · about
chapters (9)
- 0:00EDSLs and teaching challenges
- 7:12Effective teaching languages
- 13:26Error messages problem
- 18:00DrRacket teaching languages
- 25:30EDSLs worst-case scenario
- 30:37MiniKanren embedded DSL
- 37:03Teaching embedded DSLs
- 42:42Solutions for EDSL teaching
- 46:03Audience discussion
related talks
45mLanguage-Oriented Programming with Racket
22mDSLs in Racket: You Want It How, Now?
17mMacros for Domain-Specific Languages
53mDeveloping DSLs in a pragmatic way
29mIntegrating Language Engineering into the Software Development Process
35mDesigning Domain-Specific Languages: A Comparison of Three Approaches by Example
09mOn Teaching Type Systems as Macros (Lightning Talk)
01h 00mBuilding DSLs on Top of KernelF
