The state of the art in language workbenches: Conclusions from the language workbench challenge

S Erdweg, T Van Der Storm, M Völter… - … Conference, SLE 2013 …, 2013 - Springer
Abstract Language workbenches are tools that provide high-level mechanisms for the
implementation of (domain-specific) languages. Language workbenches are an active area …

A survey of metaprogramming languages

Y Lilis, A Savidis - ACM Computing Surveys (CSUR), 2019 - dl.acm.org
Metaprogramming is the process of writing computer programs that treat programs as data,
enabling them to analyze or transform existing programs or generate new ones. While the …

Evaluating and comparing language workbenches: Existing results and benchmarks for the future

S Erdweg, T Van Der Storm, M Völter, L Tratt… - … Languages, Systems & …, 2015 - Elsevier
Abstract Language workbenches are environments for simplifying the creation and use of
computer languages. The annual Language Workbench Challenge (LWC) was launched in …

Delite: A compiler architecture for performance-oriented embedded domain-specific languages

AK Sujeeth, KJ Brown, H Lee, T Rompf… - ACM Transactions on …, 2014 - dl.acm.org
Developing high-performance software is a difficult task that requires the use of low-level,
architecture-specific programming models (eg, OpenMP for CMPs, CUDA for GPUs, MPI for …

Language and IDE Modularization and Composition with MPS

M Voelter - International Summer School on Generative and …, 2011 - Springer
Modularization and composition of languages and their IDEs is an important building block
for working efficiently with domain-specific languages. Traditionally this has been a …

Language composition untangled

S Erdweg, PG Giarrusso, T Rendel - Proceedings of the Twelfth …, 2012 - dl.acm.org
In language-oriented programming and modeling, software developers are largely
concerned with the definition of domain-specific languages (DSLs) and their composition …

Neverlang: A framework for feature-oriented language development

E Vacchi, W Cazzola - Computer Languages, Systems & Structures, 2015 - Elsevier
Reuse in programming language development is an open research problem. Many authors
have proposed frameworks for modular language development. These frameworks focus on …

Scala macros: Let our powers combine! On how rich syntax and static types work with metaprogramming

E Burmako - Proceedings of the 4th Workshop on Scala, 2013 - dl.acm.org
Compile-time metaprogramming has been proven immensely useful enabling programming
techniques such as language virtualization, embedding of external domain-specific …

[HTML][HTML] On the granularity of linguistic reuse

F Bertolotti, W Cazzola, L Favalli - Journal of Systems and Software, 2023 - Elsevier
Programming languages are complex software systems integrated across an ecosystem of
different applications such as language compilers or interpreters but also an integrated …

Towards a recipe for language decomposition: quality assessment of language product lines

W Cazzola, L Favalli - Empirical Software Engineering, 2022 - Springer
Programming languages are complex systems that are usually implemented as monolithic
interpreters and compilers. In recent years, researchers and practitioners gained interest in …