Proceedings of the 30th Annual ACM Symposium on Applied Computing 2015
DOI: 10.1145/2695664.2695936
|View full text |Cite
|
Sign up to set email alerts
|

Composable and hygienic typed syntax macros

Abstract: Syntax extension mechanisms are powerful, but reasoning about syntax extensions can be difficult. Recent work on type-specific languages (TSLs) addressed reasoning about composition, hygiene and typing for extensions introducing new literal forms. We supplement TSLs with typed syntax macros (TSMs), which, unlike TSLs, are explicitly invoked to give meaning to delimited segments of arbitrary syntax. To maintain a typing discipline, we describe two flavors of term-level TSMs: synthetic TSMs specify the type of t… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1

Citation Types

0
4
0

Year Published

2017
2017
2018
2018

Publication Types

Select...
2

Relationship

1
1

Authors

Journals

citations
Cited by 2 publications
(4 citation statements)
references
References 16 publications
(17 reference statements)
0
4
0
Order By: Relevance
“…We also showed several case studies to demonstrate our system can implement various language constructs with custom name binding. [15][16][17][18][19][20][21][22]…”
Section: Resultsmentioning
confidence: 99%
See 2 more Smart Citations
“…We also showed several case studies to demonstrate our system can implement various language constructs with custom name binding. [15][16][17][18][19][20][21][22]…”
Section: Resultsmentioning
confidence: 99%
“…This limitation breaks the composability of libraries, as several libraries cannot be used together. Several languages such as Nemerle [23] also support user-defined [15][16][17][18][19][20] syntax extensions based on macros but their capabilities are more limited. In the case of Nemerle, the users can only define the syntax where the first token is an identifier.…”
Section: Related Workmentioning
confidence: 99%
See 1 more Smart Citation
“…Accordingly, different TLMs can operate at the same type, and they can operate at any type, including structural types. In a subsequent short paper, Omar et al [2015] suggested explicit application of simple expression TLMs also in a bidirectional typed setting [Pierce and Turner 2000], but that paper did not have any formal content. With TLMs, it is not necessary for the language to be bidirectionally typed (see Sec.…”
Section: Syntax Definition Systemsmentioning
confidence: 99%