Work towards supporting unions.
Remove dead data structure.
Allow nullary union constructors.
Add parsing for union constructors.
Give correct error when unifying mismatched aliases
Make sizeof stuff work nicer.
Make returns with 0 args valid.
Propagate cstrs from base types up
Make type names proper types.
Don't assert name equality.
Remove the binary I added accidentally.
A number of misc fixes I can't be arsed to separate.
Make sure node ids are unique.
Rename type constraint functions.
Fix infinite recursion on infinite types.
Don't make duplicate specializations
Rename specialized generics.
Correctly generate specialized versions of funcs.
Don't try to generate code for templates.
Don't attempt to generate code for generics.
Null sets become null sets.
Add untested code to specialize nodes.
Properly duplicate types when freshening.
Don't try to bind non-generics.
Merge branch 'master' of git+ssh://mimir.eigenstate.org/git/ori/mc2
Start implementation of freshening.
Generics now bind variables.
Separate data and text sections.
Merge branch 'master' of git+ssh://mimir.eigenstate.org/git/ori/mc2
Add mmap/munmap syscalls to test code.
The OSX assembler doesn't accept '.string'
Add support for returning structs.
Merge branch 'master' of git+ssh://mimir.eigenstate.org/git/ori/mc2
Merge branch 'master' of git+ssh://mimir.eigenstate.org/git/ori/mc2
Rewrite the 'call' for big nodes correctly.
make 'make' in tests rebuild the compiler if needed.
Make 'make clean' work again for tests.
Add a bit more debug output.
Continue to reduce debug dump size.
Start to cut down and specialize debug dumps.
Assign the void type to tyvoid.
Add test for slice length.
Make it easier to debug. Always generate .s files.
Merge branch 'master' of git+ssh://mimir.eigenstate.org/git/ori/mc2
Start attempt to rewrite call expressions.
Use the appropriate assembler for OSX.
Floats should also be output as blobs for now.
Generate object files by calling the assembler.
Call functions with large args correctly.
Try to store large values correctly through calls.
Find the inferred type before checking for members.
Add test for calling functions with non-word args.
Add "hello world" program.
A simple libray-based hello world demo compiles.
Merge branch 'master' of git+ssh://mimir.eigenstate.org/git/ori/mc2
Work towards making a "real" hello world
Don't needlessly rebuild libraries.
Remove enums from the language.
Provide "default typing" for non-int numbers.
Check float modes in the instruction selector.
Set the type class for float64 properly.
Make bscount() count properly.
Add test of string indexing, and make it work
Make it more obvious when we fail to init 'did'
Fix initialized variables more cleanly.
Fix up blitting and copies.
Carry through types correctly(?) when reducing.
Add in support for writing out strings.
Collect all functions before emitting.
Start hashing by decl node, instead of decl id
Get rid of the 'Sym' struct.
Reduce sizes on slices and arrays
allow .len on arrays and slices in the frontend.
Add support for export-only symbols.
Allow exporting types by name only.