Free Software Development

The Formal Languages & Compilers Group is active in the development of free software, through student projects and thesis works.

  1. PULP LLVM Backend by Michele Scandale, Michele Beretta and Alessandro Di Federico: a backend for the open source OpenRISC ISA, designed for OR10n, the core processor of the PULP platform.
  2. OpenCRun by Ettore Speziale, Michele Scandale, Giulio Sichel, Marco Bonacina: an OpenCL Runtime for NUMA x86_64 and STM P2012/STHORM.
  3. ILDJIT, by Simone Campanoni: a JIT compiler for the CIL bytecode based on Portable.Net (Technical Report 2008.3).
  4. Jelatine VM, by Gabriele Svelto: a VM based on the J2ME CLCD specifications, featuring a fast interpreter and a zero-overhead precise garbage collector, suitable for embedded applications.
  5. SeleKaffe, by Paolo Palumbo: a variant of the Kaffe implementation of the Java VM Specification featuring selective compilation.
  6. A collection of SUIF Passes, written by students of the Software Compilers course at ALaRI and the Program Analysis and Optimization course at Politecnico di Milano, including:
    • Loop Flattening
    • Loop Unrolling
    • Loop Peeling
    • Program instrumentation and profiling tools
    • A simplified C front-end
  7. Forson, by Alfonso Tarantini: a program for syntactically correct sentence generation. Guided by a Bison grammar file as input, it provides random or coverage testing sentences. The program can be used for compiler or parser testing or didactical purposes.
  8. Elcc, by Andrea Mocci: an Earley parser generator written in Python and compatible with Yacc/Bison Syntax.