Abstract | ||
---|---|---|
Domain-Specific Languages (DSL's) offer language-level abstractions that General-Purpose Languages do not offer, thus speeding up the implementation of the solution of problems within a specific domain. Developers have the choice of developing a DSL by building an interpreter/compiler for it, which is a hard and time-consuming task, or embedding it in a host language, thus speeding up the development process but losing several advantages that having a dedicated compiler might bring. In this work we present a meta-compiler called Metacasanova, whose meta-language is based on operational semantics. Then, we propose a language extension with functors and modules that allows to embed the type system of a language definition inside the meta-type system of Metacasanova and improves the performance of manipulating data structures at run-time. Our results show that Metacasanova dramatically reduces the code lines required to develop a compiler, and that the running time of the Meta-program is improved by embedding the host language type system in the meta-type system with the use of functors in the meta-language.
|
Year | DOI | Venue |
---|---|---|
2017 | 10.1145/3136014.3136015 | SPLASH '17: Conference on Systems, Programming, Languages, and Applications: Software for Humanity
Vancouver
BC
Canada
October, 2017 |
Keywords | Field | DocType |
meta-compiler,optimization,operational semantics | Domain-specific language,Operational semantics,Functional compiler,Programming language,Computer science,Compiler correctness,Compiler,Interpreter,Compiler construction,Intrinsic function | Conference |
ISBN | Citations | PageRank |
978-1-4503-5525-4 | 0 | 0.34 |
References | Authors | |
4 | 5 |
Name | Order | Citations | PageRank |
---|---|---|---|
Francesco Di Giacomo | 1 | 5 | 1.60 |
Mohamed Abbadi | 2 | 15 | 3.93 |
Agostino Cortesi | 3 | 791 | 66.19 |
Pieter Spronck | 4 | 475 | 51.04 |
Giuseppe Maggiore | 5 | 2 | 1.11 |