Multi-purpose Syntax Definition with SDF3

Conference Paper (2020)
Author(s)

Luis de Souza Amorim (Australian National University)

Eelco Visser (TU Delft - Electrical Engineering, Mathematics and Computer Science)

Research Group
Programming Languages
DOI related publication
https://doi.org/10.1007/978-3-030-58768-0_1 Final published version
More Info
expand_more
Publication Year
2020
Language
English
Research Group
Programming Languages
Volume number
12310
Pages (from-to)
1-23
Publisher
Springer
ISBN (print)
978-3-030-58767-3
ISBN (electronic)
978-3-030-58768-0
Event
18th International Conference on Software Engineering and Formal Methods, SEFM 2020 (2020-09-14 - 2020-09-18), Amsterdam, Netherlands
Downloads counter
272
Collections
Institutional Repository
Reuse Rights

Other than for strictly personal use, it is not permitted to download, forward or distribute the text or part of it, without the consent of the author(s) and/or copyright holder(s), unless the work is under an open content license such as Creative Commons.

Abstract

SDF3 is a syntax definition formalism that extends plain context-free grammars with features such as constructor declarations, declarative disambiguation rules, character-level grammars, permissive syntax, layout constraints, formatting templates, placeholder syntax, and modular composition. These features support the multi-purpose interpretation of syntax definitions, including derivation of type schemas for abstract syntax tree representations, scannerless generalized parsing of the full class of context-free grammars, error recovery, layout-sensitive parsing, parenthesization and formatting, and syntactic completion. This paper gives a high level overview of SDF3 by means of examples and provides a guide to the literature for further details.