In this thesis, we introduce SableCC, an object-oriented framework that generates compilers (and interpreters) in the Java programming language. This framework is based on two fundamental design decisions. Firstly, the framework uses object-oriented techniques to automatically build a strictly-typed abstract syntax tree that matches the grammar of the compiled language and simplifies debugging. Secondly, the framework generates tree-walker classes using an extended version of the visitor design pattern which enables the implementation of actions on the nodes of the abstract syntax tree using inheritance. These two design decisions lead to a tool that supports a shorter development cycle for constructing compilers.To demonstrate the simplici...
We describe JastAdd, a Java-based system for specifying and implementing the parts of compiler front...
The object-oriented paradigm represents a significant shift in approach to the development of comple...
Most high-level program languages have their own compiler to interpret and compile source code, and ...
This paper describes the zJava compiler infrastructure, a high-level framework for the analysis and ...
The Java language provides a promising solution to the design of safe programs, with an application ...
In this thesis, we introduce SableJIT, a retargetable just-in-time compiler for the SableVM Java vi...
The object-oriented style of programming facilitates program adaptation and enhances program generic...
Broad in scope, involving theory, the application of that theory, and programming technology, compil...
Abstract This paper presents OpenJava, which is a macro system that we have developed for Java. With...
grantor: University of TorontoThis thesis describes the zJava High Level Intermediate Repr...
This paper introduces compiler construction basics with JavaCC and focuses on paradigms of language ...
Abstract. In this paper, we propose an approach to automatic compiler parallelization based on langu...
Compilation to bytecode paired with interpretation is often used as a technique to easily build pro...
A primary objective in the SUIF compiler design has been to develop an infrastructure for research i...
Abstract. OpenJIT is an open-ended, reflective JIT compiler framework for Java being researched and ...
We describe JastAdd, a Java-based system for specifying and implementing the parts of compiler front...
The object-oriented paradigm represents a significant shift in approach to the development of comple...
Most high-level program languages have their own compiler to interpret and compile source code, and ...
This paper describes the zJava compiler infrastructure, a high-level framework for the analysis and ...
The Java language provides a promising solution to the design of safe programs, with an application ...
In this thesis, we introduce SableJIT, a retargetable just-in-time compiler for the SableVM Java vi...
The object-oriented style of programming facilitates program adaptation and enhances program generic...
Broad in scope, involving theory, the application of that theory, and programming technology, compil...
Abstract This paper presents OpenJava, which is a macro system that we have developed for Java. With...
grantor: University of TorontoThis thesis describes the zJava High Level Intermediate Repr...
This paper introduces compiler construction basics with JavaCC and focuses on paradigms of language ...
Abstract. In this paper, we propose an approach to automatic compiler parallelization based on langu...
Compilation to bytecode paired with interpretation is often used as a technique to easily build pro...
A primary objective in the SUIF compiler design has been to develop an infrastructure for research i...
Abstract. OpenJIT is an open-ended, reflective JIT compiler framework for Java being researched and ...
We describe JastAdd, a Java-based system for specifying and implementing the parts of compiler front...
The object-oriented paradigm represents a significant shift in approach to the development of comple...
Most high-level program languages have their own compiler to interpret and compile source code, and ...