Write a Blog >>
SPLASH 2017
Sun 22 - Fri 27 October 2017 Vancouver, Canada
Fri 27 Oct 2017 11:37 - 12:00 at Regency A - Language Design Chair(s): Gregor Richards

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.

Conference Day
Fri 27 Oct

Displayed time zone: Tijuana, Baja California change

10:30 - 12:00
Language DesignOOPSLA at Regency A
Chair(s): Gregor RichardsUniversity of Waterloo
10:30
22m
Talk
Project Snowflake: Non-blocking Safe Manual Memory Management for .NET
OOPSLA
Matthew ParkinsonMicrosoft Research, UK, Dimitrios VytiniotisMicrosoft Research, Cambridge, Kapil VaswaniMicrosoft Research, Manuel CostaMicrosoft Research, Pantazis DeligiannisMicrosoft Research, Dylan McDermottUniversity of Cambridge, Jonathan BalkindPrinceton, USA, Aaron BlanksteinPrinceton, USA
DOI
10:52
22m
Talk
Alpaca: Intermittent Execution without Checkpoints
OOPSLA
Kiwan MaengCarnegie Mellon University, USA, Alexei ColinCarnegie Mellon University, Brandon LuciaCarnegie Mellon University
DOI
11:15
22m
Talk
An Auditing Language for Preventing Correlated Failures in the Cloud
OOPSLA
Ennan ZhaiYale University, USA, Ruzica PiskacYale University, Ronghui GuColumbia University, USA, Xun LaoYale University, USA, Xi WangYale University, USA
DOI
11:37
22m
Talk
Reliable and Automatic Composition of Language Extensions to C
OOPSLA
Ted KaminskiUniversity of Minnesota, Lucas KramerUniversity of Minnesota, Travis CarlsonUniversity of Minnesota, USA, Eric Van WykUniversity of Minnesota, USA
DOI Pre-print