This paper describes an extensible language framework, ableC, that allows programmers to import new, domain-specific, independently-developed language features into their programming language, in this case C. Crucially, this framework ensures that the language extensions will automatically compose to form a working translator that does not terminate abnormally. This is possible due to two modular analyses that extension developers can apply to their language extension to check its composability. Specifically, these ensure that the composed concrete syntax is non-ambiguous and the composed attribute grammar specifying the semantics is well-defined. This assurance and the expressiveness of the supported extensions is a distinguishing characteristic of the approach.
The paper describes a number of techniques for specifying a host language, in this case C at the C11 standard, to make it more amenable to language extension. These include techniques that make additional extensions pass these modular analyses, refactorings of the host language to support a wider range of extensions, and the addition of semantic extension points to support, for example, operator overloading and non-local code transformations.
Fri 27 OctDisplayed time zone: Tijuana, Baja California change
10:30 - 12:00 | |||
10:30 22mTalk | Project Snowflake: Non-blocking Safe Manual Memory Management for .NET OOPSLA Matthew J. Parkinson Microsoft Research, UK, Dimitrios Vytiniotis Microsoft Research, Cambridge, Kapil Vaswani Microsoft Research, Manuel Costa Microsoft Research, Pantazis Deligiannis Microsoft Research, Dylan McDermott University of Cambridge, Jonathan Balkind Princeton, USA, Aaron Blankstein Princeton, USA DOI | ||
10:52 22mTalk | Alpaca: Intermittent Execution without Checkpoints OOPSLA Kiwan Maeng Carnegie Mellon University, USA, Alexei Colin Carnegie Mellon University, Brandon Lucia Carnegie Mellon University DOI | ||
11:15 22mTalk | An Auditing Language for Preventing Correlated Failures in the Cloud OOPSLA Ennan Zhai Yale University, USA, Ruzica Piskac Yale University, Ronghui Gu Columbia University, USA, Xun Lao Yale University, USA, Xi Wang Yale University, USA DOI | ||
11:37 22mTalk | Reliable and Automatic Composition of Language Extensions to C OOPSLA Ted Kaminski University of Minnesota, Lucas Kramer University of Minnesota, Travis Carlson University of Minnesota, USA, Eric Van Wyk University of Minnesota, USA DOI Pre-print |