Polyglot: An extensible compiler framework for Java. Polyglot is an extensible compiler framework that supports the easy creation of compilers for languages similar to Java, while avoiding code duplication. The Polyglot framework is useful for domain-specific languages, exploration of language design, and for simplified versions of Java for pedagogical use. We have used Polyglot to implement several major and minor modifications to Java; the cost of implementing language extensions scales well with the degree to which the language differs from Java. This paper focuses on the design choices in Polyglot that are important for making the framework usable and highly extensible. Polyglot source code is available.
Keywords for this software
References in zbMATH (referenced in 10 articles )
Showing results 1 to 10 of 10.
- Gay, Simon J.; Gesbert, Nils; Ravara, António; Vasconcelos, Vasco T.: Modular session types for objects (2015)
- Paulino, Hervé; Marques, Eduardo: Heterogeneous programming with single operation multiple data (2015)
- Dinkelaker, Tom; Eichberg, Michael; Mezini, Mira: Incremental concrete syntax for embedded languages with support for separate compilation (2013) ioport
- Rompf, Tiark; Sujeeth, Arvind K.; Amin, Nada; Brown, Kevin J.; Jovanovic, Vojin; Lee, HyoukJoong; Jonnalagedda, Manohar; Olukotun, Kunle; Odersky, Martin: Optimizing data structures in high-level programs, new directions for extensible compilers based on staging (2013)
- Bravenboer, Martin; Dolstra, Eelco; Visser, Eelco: Preventing injection attacks with syntax embeddings (2010)
- Gay, Simon J.; Vasconcelos, Vasco T.; Ravara, António; Gesbert, Nils; Caldeira, Alexandre Z.: Modular session types for distributed object-oriented programming (2010)
- Krahn, Holger; Rumpe, Bernhard; Völkel, Steven: MontiCore: a framework for compositional development of domain specific languages (2010) ioport
- Avgustinov, Pavel; Christensen, Aske Simon; Hendren, Laurie; Kuzins, Sascha; Lhoták, Jennifer; Lhoták, Ondřej; de Moor, Oege; Sereni, Damien; Sittampalam, Ganesh; Tibble, Julian: \textitabc: An extensible AspectJ compiler (2006)
- Candea, George; Kiciman, Emre; Kawamoto, Shinichi; Fox, Armando: Autonomous recovery in componentized internet applications (2006) ioport
- Nystrom, Nathaniel; Clarkson, Michael R.; Myers, Andrew C.: Polyglot: An extensible compiler framework for Java (2003)