On Adding Pattern Matching to Haskell-based Deeply Embedded Domain Specific Languages
Capturing control flow is the Achilles heel of Haskell-based deeply embedded domain specific languages. Rather than use the builtin control flow mechanisms, artificial control flow combinators are used instead. However, capturing traditional control flow in a deeply embedded domain specific language would support the writing of programs in a natural style by allowing the programmer to use the constructs that are already builtin to the base language, such as pattern matching and recursion. In this paper, we expand the capabilities of Haskell-based deep embeddings with a compiler extension for reifying conditionals and pattern matching. With this new support, the subset of Haskell that we use for expressing deeply embedded domain specific languages can be cleaner, Haskell-idiomatic, and more declarative in nature.
Mon 18 JanDisplayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change
18:00 - 19:30 | |||
18:00 30mResearch paper | A Family of Unification-oblivious Program Transformations and Their Applications PADL Paul Tarau University of North Texas | ||
18:30 30mResearch paper | On Adding Pattern Matching to Haskell-based Deeply Embedded Domain Specific Languages PADL David Young University of Kansas, USA, Mark Grebe University of Central Missouri, USA, Andy Gill University of Kansas, USA |