#compiler #x86 #scheme

nightly bin+lib inc

Incremental approach to compiler construction

5 releases

✓ Uses Rust 2018 edition

0.1.3 Dec 13, 2019
0.1.2 Sep 14, 2019
0.1.1 Jun 24, 2019
0.1.0 Jun 24, 2019
0.0.1 Jun 24, 2019

#74 in Development tools

39 downloads per month

MIT and MPL-2.0 licenses

105KB
2K SLoC

An incremental scheme compiler Build Status Docs

A tiny scheme to x86 asm compiler developed incrementally as described in the paper An Incremental Approach to Compiler Construction by Abdulaziz Ghuloum.

Getting started

$ cargo build
$ cargo test
$ echo "(let ((a 1) (b 2)) (+ a b))" | cargo run -q

The generated assembly is usually easy to read

$ echo "(let ((a 1) (b 2)) (+ a b))" | cargo run -q -- -S

Docs

Inc is reasonably well documented and is preferably read with Cargo docs.

$ cargo doc --document-private-items --open

Colophon

This project started in Chez, later ported it to Racket and then again to rust. The old project still lives at rkt.

Dependencies

~1MB
~18K SLoC