2014
DOI: 10.1145/2775053.2658771
|View full text |Cite
|
Sign up to set email alerts
|

Yin-yang: concealing the deep embedding of DSLs

Abstract: Deeply embedded domain-specific languages (EDSLs) intrinsically compromise programmer experience for improved program performance. Shallow EDSLs complement them by trading program performance for good programmer experience. We present Yin-Yang, a framework for DSL embedding that uses Scala macros to reliably translate shallow EDSL programs to the corresponding deep EDSL programs. The translation allows program prototyping and development in the user friendly shallow embedding, while the corresponding deep embe… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1

Citation Types

0
3
0

Year Published

2015
2015
2016
2016

Publication Types

Select...
2
1

Relationship

0
3

Authors

Journals

citations
Cited by 3 publications
(3 citation statements)
references
References 30 publications
0
3
0
Order By: Relevance
“…Non-problem: Rep types Sometimes Rep types themselves are pointed out as an issue, or the fact that they show up in type errors even though they might have been inferred in the source (see e.g. [37]). We do not consider this an actual problem, but rather a symptom of unfamiliarity.…”
Section: Practical Issuesmentioning
confidence: 99%
“…Non-problem: Rep types Sometimes Rep types themselves are pointed out as an issue, or the fact that they show up in type errors even though they might have been inferred in the source (see e.g. [37]). We do not consider this an actual problem, but rather a symptom of unfamiliarity.…”
Section: Practical Issuesmentioning
confidence: 99%
“…Instead, the transformation scope is closed and nothing is assumed to be part of the interface. Hopefully, this will be improved by techniques such as the Yin-Yang staging front-end [30], based on Scala macros [19]. Another type-directed transformation in the Scala compiler is the pickling framework [33], also based on macros.…”
Section: Related Workmentioning
confidence: 99%
“…Instead, the transformation scope is closed and nothing is assumed to be part of the interface. Hopefully, this will be improved by techniques such as the Yin-Yang staging front-end [30], based on Scala macros [19]. Another type-directed transformation in the Scala compiler is the pickling framework [33], also based on macros.…”
Section: Related Workmentioning
confidence: 99%