GPCE 2015
Mon 26 - Tue 27 October 2015 Pittsburgh, Pennsylvania, United States
co-located with SPLASH 2015
Mon 26 Oct 2015 11:10 - 11:40 at Grand Station 1 - Session 2 Chair(s): Tiark Rompf

Embedded domain-specific languages (EDSLs), inheriting a general-purpose language’s features as well as look-and-feel, have traditionally been second-class or rather non-citizens in terms of host-language design. This makes sense when one regards them to be on the same level as traditional, non-EDSL library interfaces. However, this equivalence only applies to the simplest of EDSLs. In this paper we illustrate why this is detrimental when moving on to EDSLs that employ staging, i.e. program reification, by example of various issues that affect authors and users alike. We believe that if EDSLs are to be considered a reliable, language-like interface abstraction, they require exceptional attention and design scrutiny. Instead of unenforceable conventions, we advocate the acceptance of EDSLs as proper, i.e. almost first-class, citizens while retaining most advantages of pure embeddings. As a small step towards this goal, we present a pragmatic framework prototype for Java. It is based on annotations that explicate and document membership to explicit EDSL entities. In a nutshell, our framework identifies (annotated) method calls and field accesses as EDSL terms and dynamically constructs an abstract syntax representation, which is eventually passed to a semantics-defining back end implemented by the EDSL author.

Mon 26 Oct

gpce2015
10:30 - 12:00: GPCE - Session 2 at Grand Station 1
Chair(s): Tiark RompfPurdue & Oracle Labs
gpce201510:30 - 10:40
Day opening
gpce201510:40 - 11:10
Talk
Roland Leißa, Klaas BoescheSaarland University, Sebastian Hack, Richard MembarthGerman Research Center for Artificial Intelligence, Philipp SlusallekGerman Research Center for Artificial Intelligence
gpce201511:10 - 11:40
Talk
Maximilian Scherr, Shigeru ChibaUniversity of Tokyo
gpce201511:40 - 12:00
Talk
Bob ReyndersiMinds - Distrinet, KU Leuven, Dominique DevrieseiMinds - Distrinet, KU Leuven, Frank PiessensiMinds - Distrinet, KU Leuven