THE CATALOG OF COMPILER CONSTRUCTION TOOLS

Tools, Frameworks, Infrastructure

Compiler
Construction
Kits

Lexer and Parser
Generators

Trees and
Transformation

Attribute Grammar
Systems

Backend
Generators

Program Analysis
and Optimisation

Environment
Generators

Tools, Frameworks,
Infrastructure

Compiler
Construction
with Java

ACK

The Amsterdam Compiler Kit is an integrated collection of programs designed to simplify the task of producing portable (cross) compilers and interpreters. For each language to be compiled, a program (called a front end) must be written to translate the source program into a common intermediate code.

MORE ...


AISEE

aiSee automatically calculates a customizable layout of graphs specified in GDL (graph description language). This layout is then displayed, and can be printed or interactively explored. aiSee has been developed to visualize the internal data structures typically found in compilers.

MORE ...


ARCHELON

This tool set allows to quickly develop a processor specific ANSI C compiler, assembler, linker and compactor for any microcontroller or DSP application.

MORE ...


BOEHM COLLECTOR

The Boehm-Demers-Weiser conservative garbage collector can be used as a garbage collecting replacement for C malloc or C++ new. It is also used by a number of programming language implementations that use C as intermediate code.

MORE ...


COSY

A compiler construction framework with emphasis on parallel execution of compiler phases

MORE ...


DMS

The DMS Reengineering toolkit enables the analysis, translation, and/or reverse engineering of large-scale software systems, containing arbitrary mixtures of languages. DMS can also be used for domain-specific program generation.

MORE ...


EDG

Edison Design Group provides compiler frontends for the OEM market.

MORE ...


EEL

EEL (Executable Editing Library) provides abstractions that allow a tool to analyze and modify executable programs without being concerned with particular instruction sets, executable file formats, or consequences of deleting existing code and adding foreign code.

MORE ...


JFRONT

Jfront Rawjava is a C++ library for parsing java source code.

MORE ...


NULLSTONE

Automated Compiler Performance Analysis Tool which uses a QA approach of test coverage and isolation to measure an optimizer.

MORE ...


SAGE++

Sage++ provides an object-oriented toolkit for building program transformation systems for Fortran 77, Fortran 90, C and C++ languages

MORE ...


SIC

Smalltalk-based Interactive Compiler-compiler, an educational tool for visualizing compiling techniques

MORE ...


SUIF

Scanning, Parsing, and Rewriting Kit: a "little language framework" that supports the construction of language processors in Python. The SUIF compiler is an infrastructure designed to support collaborative research in optimizing and parallelizing compilers. Independently developed compilation passes work together by using a common intermediate format to represent programs.

MORE ...


TM

Tm is a preprocessor that takes a code template and some datastructure definitions, and generates source code for an arbitrary programming language

MORE ...


TRIMARAN

Trimaran is a compiler infrastructure for supporting state of the art research in compiling for Instruction Level Parallel (ILP) architectures. The system is currently oriented towards EPIC (Explicitly Parallel Instruction Computing) architectures, specifically the HPL-PD family of processors. It supports compiler research in machine-dependent ILP compilation techniques such as the effective use of predication, critical path length reduction, instruction scheduling, register allocation and programmatic management of cache hierarchies.

MORE ...


VCG

Visualization of Compiler Graphs. The VCG tool reads a textual and readable specification of a graph and visualizes the graph. If not all positions of nodes are fixed, the tool layouts the graph using several heuristics as reducing the number of crossings, minimizing the size of edges, centering of nodes.

MORE ...


ZEPHYR

The Zephyr philosophy is building compilers from parts. Parts might include front ends, back ends, optimizers, and the glue that holds all these pieces together. You might even generate parts automatically from compact specifications.

MORE ...





COPYRIGHT © 1996-2006
GERMAN NATIONAL RESEARCH CENTER FOR INFORMATION TECHNOLOGY
FRAUNHOFER INSTITUTE FOR COMPUTER ARCHITECTURE AND SOFTWARE TECHNOLOGY