2011
DOI: 10.1007/978-3-642-18023-1_6
|View full text |Cite
|
Sign up to set email alerts
|

EASY Meta-programming with Rascal

Abstract: Abstract. Rascal is a new language for meta-programming and is intended to solve problems in the domain of source code analysis and transformation. In this article we give a high-level overview of the language and illustrate its use by many examples. Rascal is a work in progress both regarding implementation and documentation. More information is available at http://www.meta-environment.org/MetaEnvironment/Rascal.Key words: source code analysis, source code transformation, metaprogramming. A New Language for M… Show more

Help me understand this report

Search citation statements

Order By: Relevance

Paper Sections

Select...
2
1
1
1

Citation Types

0
88
0

Year Published

2012
2012
2022
2022

Publication Types

Select...
5
3
1

Relationship

1
8

Authors

Journals

citations
Cited by 78 publications
(88 citation statements)
references
References 24 publications
0
88
0
Order By: Relevance
“…Using these systems is quite similar to our approach, which can be seen, e. g., in the Extract-Analyze-Synthesise (EASY) Paradigm for Rascal [20]. Both, the source and the target language, are specified in some form of grammar formalism and the transformation between the languages is given by a set of transformation rules, where all the abovementioned systems use some sorts of rewriting rules, which are specified in a textual syntax.…”
Section: Related Workmentioning
confidence: 99%
“…Using these systems is quite similar to our approach, which can be seen, e. g., in the Extract-Analyze-Synthesise (EASY) Paradigm for Rascal [20]. Both, the source and the target language, are specified in some form of grammar formalism and the transformation between the languages is given by a set of transformation rules, where all the abovementioned systems use some sorts of rewriting rules, which are specified in a textual syntax.…”
Section: Related Workmentioning
confidence: 99%
“…The Rascal metaprogramming language [19,20] was specifically designed to create source code models and map source code to these models. Three use cases, namely reverse engineering, refactoring tools and engineering of domain specific languages, have been the inspiration of its design.…”
Section: Enter Rascal: Metaprogramming To Bring Languages Togethermentioning
confidence: 99%
“…For instance, containment is modeled in Rascal using a relation: rel Metaprogramming. Rascal's design is inspired by the Extract-Analyze-SYnthesize paradigm 4 (EASY) [20]. Many of the use cases for Rascal follow the structure of extracting source code facts, analyzing them and synthesizing a result.…”
Section: Enter Rascal: Metaprogramming To Bring Languages Togethermentioning
confidence: 99%
“…That is, we developed a designated extractor, using the Rascal [11] meta-programming language, so that the following ANTLR constructs are abstracted away: Also some minor notational features like character class negation ( ∼ ) or range operator (..) needed to be translated into basic context-free grammar notation. Tokens defined as terminals were merged with the normal grammar rules.…”
Section: Grammar Extractionmentioning
confidence: 99%