JastAdd -- an aspect-oriented compiler construction system. We describe JastAdd, a Java-based system for compiler construction. JastAdd is centered around an object-oriented representation of the abstract syntax tree where reference variables can be used to link together different parts of the tree. JastAdd supports the combination of declarative techniques (using Reference Attributed Grammars) and imperative techniques (using ordinary Java code) in implementing the compiler. The behavior can be modularized into different aspects, e.g. name analysis, type checking, code generation, etc., that are woven together into classes using aspect-oriented programming techniques, providing a safer and more powerful alternative to the Visitor pattern. The JastAdd system is independent of the underlying parsing technology and supports any noncircular dependencies between computations, thereby allowing general multi-pass compilation. The attribute evaluator (optimal recursive evaluation) is implemented very conveniently using Java classes, interfaces, and virtual methods

References in zbMATH (referenced in 23 articles , 1 standard article )

Showing results 1 to 20 of 23.
Sorted by year (citations)

1 2 next

  1. Ali, Syed Muhammad Fawad; Mey, Johannes; Thiele, Maik: Parallelizing user-defined functions in the ETL workflow using orchestration style sheets (2019)
  2. Bettini, Lorenzo: Implementing type systems for the IDE with Xsemantics (2016)
  3. Petitjean, Simon; Duchier, Denys; Parmentier, Yannick: XMG 2: describing description languages (2016)
  4. Reis, Leonardo V. S.; Di Iorio, Vladimir O.; Bigonha, Roberto S.: An on-the-fly grammar modification mechanism for composing and defining extensible languages (2015)
  5. Söderberg, Emma; Hedin, Görel: Declarative rewriting through circular nonterminal attributes (2015)
  6. Dinkelaker, Tom; Eichberg, Michael; Mezini, Mira: Incremental concrete syntax for embedded languages with support for separate compilation (2013) ioport
  7. Freudenthal, Margus: Simpl: a toolkit for domain-specific language development in enterprise information systems (2013)
  8. Martins, Pedro; Fernandes, João Paulo; Saraiva, João: Zipper-based attribute grammars and their extensions (2013)
  9. Apel, Sven; Kolesnikov, Sergiy; Liebig, Jörg; Kästner, Christian; Kuhlemann, Martin; Leich, Thomas: Access control in feature-oriented programming (2012) ioport
  10. Markus Voelter, Daniel Ratiu, Bernhard Schaetz, Bernd Kolb: mbeddr: an extensible C-based programming language and IDE for embedded systems (2012) not zbMATH
  11. el Boustani, Nabil; Hage, Jurriaan: Improving type error messages for generic Java (2011)
  12. Åkesson, Johan; Ekman, Torbjörn; Hedin, Görel: Implementation of a modelica compiler using JastAdd attribute grammars (2010)
  13. Bravenboer, Martin; Dolstra, Eelco; Visser, Eelco: Preventing injection attacks with syntax embeddings (2010)
  14. Krahn, Holger; Rumpe, Bernhard; Völkel, Steven: MontiCore: a framework for compositional development of domain specific languages (2010) ioport
  15. van Wyk, Eric; Bodin, Derek; Gao, Jimin; Krishnan, Lijesh: Silver: an extensible attribute grammar system (2010)
  16. Magnusson, Eva; Ekman, Torbjörn; Hedin, Görel: Demand-driven evaluation of collection attributes (2009) ioport
  17. Schäfer, Max; Ekman, Torbjörn; de Moor, Oege: Formalising and verifying reference attribute grammars in Coq (2009)
  18. Van Wyk, Eric; Heimdahl, Mats Per Erik: Flexibility in modeling languages and tools: a call to arms (2009) ioport
  19. Ekman, Torbjörn; Hedin, Görel: The JastAdd system - modular extensible compiler construction (2007)
  20. Magnusson, Eva; Hedin, Görel: Circular reference attributed grammars - their evaluation and applications (2007)

1 2 next

Further publications can be found at: http://jastadd.org/old/research/key-publications