rust/src
2010-07-01 10:44:27 -07:00
..
boot Implement STMT_init_box in trans, clean up some of the semant table-accessors. 2010-07-01 10:44:27 -07:00
comp Populate tree. 2010-06-23 21:03:09 -07:00
etc Populate tree. 2010-06-23 21:03:09 -07:00
lib The few and proud isolated bits from stdlib-work so far that don't break everything. Note util.rs hasn't yet been declared mod in the std crate. Don't do that yet, as it breaks make check. 2010-06-28 23:18:51 -07:00
rt Move more of the GC logic into the runtime. 2010-06-28 18:53:43 -07:00
test Rename 'exterior' to 'box' and 'interior' to 'local' (at least wrt. slots; keep MEM_interior for describing interior-parts-of-allocations) 2010-06-30 22:45:54 -07:00
Makefile Revert "Improve makefile to try to avoid wedging on failure-to-dep lib/std.rc" 2010-06-29 10:30:36 -07:00
README Populate tree. 2010-06-23 21:03:09 -07:00

This is preliminary version of the Rust compiler.

Source layout:

boot/              The bootstrap compiler
boot/fe            - Front end (lexer, parser, AST)
boot/me            - Middle end (resolve, check, layout, trans)
boot/be            - Back end (IL, RA, insns, asm, objfiles)
boot/util          - Ubiquitous helpers
boot/llvm          - LLVM-based alternative back end
boot/driver        - Compiler driver

comp/              The self-hosted compiler (doesn't exist yet)
comp/*             - Same structure as in boot/

rt/                The runtime system
rt/rust_*.cpp      - The majority of the runtime services
rt/isaac           - The PRNG used for pseudo-random choices in the runtime
rt/bigint          - The bigint library used for the 'big' type
rt/uthash          - Small hashtable-and-list library for C, used in runtime
rt/{sync,util}     - Small utility classes for the runtime.

test/              Testsuite (for both bootstrap and self-hosted)
test/compile-fail  - Tests that should fail to compile
test/run-fail      - Tests that should compile, run and fail
test/run-pass      - Tests that should compile, run and succeed

Please be gentle, it's a work in progress.