previous ToC next

 

1. Introduction

 

This on-line document accompanies the slides and other material available for the courses Formal Languages and Compilers and Linguaggi e Traduttori.

It describes the project of a complete compiler for a real programming language and is organized to demonstrate how to incrementally design and implement the successive phases of the compilation process.

All the used tools are freely available on the Internet:

 the front end of the compiler has been developed by means of JFlex, a lexical analyzer generator, and Cup, an LALR parser generator, both based on the Java Standard Edition Platform

 the back end is made by the LLVM retargettable code generator, which currently supports X86, X86-64, PowerPC, PowerPC-64, ARM, Thumb, SPARC, Alpha, and IA-64 architectures.

 

previous ToC next