Unembedding domain-specific languages

Robert Atkey, Sam Lindley, Jeremy Yallop

Research output: Chapter in Book/Report/Conference proceedingConference contribution book

33 Citations (Scopus)

Abstract

Higher-order abstract syntax provides a convenient way of embedding domain-specific languages, but is awkward to analyse and manipulate directly. We explore the boundaries of higher-order abstract syntax. Our key tool is the unembedding of embedded terms as de Bruijn terms, enabling intensional analysis. As part of our solution we present techniques for separating the definition of an embedded program from its interpretation, giving modular extensions of the embedded language, and different ways to encode the types of the embedded language.
Original languageEnglish
Title of host publicationHaskell '09 Proceedings of the 2nd ACM SIGPLAN Symposium on Haskell
EditorsStephanie Weirich
Pages37-48
Number of pages12
DOIs
Publication statusPublished - 2009
Event2nd ACM SIGPLAN symposium on Haskell - Edinburgh, United Kingdom
Duration: 31 Aug 20092 Sep 2009

Conference

Conference2nd ACM SIGPLAN symposium on Haskell
CountryUnited Kingdom
CityEdinburgh
Period31/08/092/09/09

Keywords

  • domain-specific languages
  • coding
  • syntax
  • programming environments

Cite this