Write a Blog >>
SLE 2016
Mon 31 October - Tue 1 November 2016 Amsterdam, Netherlands
co-located with SPLASH 2016
Tue 1 Nov 2016 11:20 - 11:45 at Zürich 2 - Development Environments Chair(s): Anthony Sloane

Principled syntactic code completion enables developers to change source code by inserting code templates, thus increasing developer efficiency and supporting language exploration. However, existing code completion systems are ad-hoc and neither complete nor sound. They are not complete and only provide few code templates for selected programming languages. They also are not sound and propose code templates that yield invalid programs when inserted.This paper presents a generic framework that automatically derives complete and sound syntactic code completion from the syntax definition of arbitrary languages. A key insight of our work is to provide an explicit syntactic representation for incomplete programs using placeholders. This enables us to address the following challenges for code completion separately: (i) completing incomplete programs by replacing placeholders with code templates, (ii) injecting placeholders into complete programs to make them incomplete, and (iii) introducing lexemes and placeholders into incorrect programs through error-recovery parsing to make them correct so we can apply one of the previous strategies. We formalize our framework and provide an implementation in the Spoofax Language Workbench.

Tue 1 Nov

Displayed time zone: Amsterdam, Berlin, Bern, Rome, Stockholm, Vienna change

10:30 - 12:10
Development EnvironmentsSLE at Zürich 2
Chair(s): Anthony Sloane Macquarie University, Australia
10:30
25m
Talk
Towards a Universal Code Formatter through Machine LearningArtifact EvaluationDistinguished Paper
SLE
Terence Parr University of San Francisco, USA, Jurgen Vinju CWI, Netherlands
DOI Pre-print Media Attached File Attached
10:55
25m
Talk
The IDE Portability Problem and Its Solution in MontoArtifact Evaluation
SLE
Sven Keidel Delft University of Technology, Netherlands, Wulf Pfeiffer TU Darmstadt, Germany, Sebastian Erdweg Delft University of Technology, Netherlands
DOI Media Attached File Attached
11:20
25m
Talk
Principled Syntactic Code Completion using PlaceholdersArtifact Evaluation
SLE
Luis Eduardo de Souza Amorim Delft University of Technology, Netherlands, Sebastian Erdweg Delft University of Technology, Netherlands, Guido Wachsmuth Delft University of Technology, Netherlands, Eelco Visser Delft University of Technology, Netherlands
DOI Media Attached
11:45
15m
Talk
DrAST: An Inspection Tool for Attributed Syntax Trees (Tool Demo)Artifact Evaluation
SLE
Joel Lindholm Lund University, Sweden, Johan Thorsberg Lund University, Sweden, Görel Hedin Lund University, Sweden
DOI Media Attached