Contents

Update News
Overview
Downloads


In The News

April 19, 2010

I have just made the Alpha C compiler open source. The license is public domain, with no restrictions whatsoever.


Overview

Description

Alpha C is a minimalist C compiler implemented in OCaml using LLVM. This project was initiated as part of the IFT6232 graduate compilers course at the University of Montreal.

This compiler incorporates an interpreter and a JIT compiler, as well as a profiler which supports execution time and call graph profiling. I have chosen to make it open source because there are very few examples out there of how to use LLVM with OCaml.

Limitations

Alpha C does not support all features of the C language. Unsupported features include function pointers, typedefs and goto statements. The compiler also only supports char, int and float basic types. It should, however, be fairly easy to extend.

Note that while most of the code is portable, the profiler relies on POSIX signals, and thus, slight modifications may be required to get it working on some systems.


Downloads

Click on the link below to download the Alpha C source code:
alphac_source.tar.gz (47 KB)