WG211/M11Brady
From WG 2.11
Implementing Domain Specific Languages by Syntax Overloading by Edwin Brady
I will describe a new overloading notation, implemented in Idris, that facilitates programming, modularity and reuse in Embedded Domain Specific Languages (EDSLs), and use it to reason about safe resource usage and state management. The EDSL separates the structural language constructs from primitive operations, and allows precisely-typed functions to be lifted into the EDSL. In this way, we implement a generic framework for constructing state-aware EDSLs for systems programming.