aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Expand)AuthorFilesLines
2012-12-17Fix calling functions that lexically enclose the current function.David Robillard4-44/+76
2012-12-15Write forward declarations for all types and functions for mutual and/or nest...David Robillard7-16/+89
2012-12-15Compile constructors as LLVM struct types.David Robillard8-43/+105
2012-12-15Add Subst::augment function.David Robillard2-0/+11
2012-12-14Use explicit 'call' form after lifting pass.David Robillard4-10/+13
2012-12-14Fix typo.David Robillard1-1/+1
2012-12-14More flexible and unified code pass design.David Robillard3-52/+66
2012-12-14Real implementation of algebraic data types, and parametric types.David Robillard8-55/+250
2012-10-15Update for LLVM 3.1David Robillard7-78/+89
2011-10-15Waf build systemDavid Robillard5-123/+114
2011-05-16Oops.David Robillard1-1/+1
2011-05-16Fix pretty-printing of defines with list values.David Robillard1-2/+5
2011-05-15Simplify compile_cons.David Robillard1-11/+6
2011-05-15Remove cast form (unnecessary since compile stage casts paramters as needed a...David Robillard4-17/+8
2011-05-15Generate code entirely via emitting flat IR (don't special case main/repl).David Robillard5-59/+73
2011-05-15Leave symbols alone in GC (currently causes memory errors)David Robillard1-1/+3
2011-05-14Fix global set/get (top level variable definitions in the REPL).David Robillard2-53/+74
2011-05-14Tidy.David Robillard1-5/+3
2011-05-14Create 'main' in IR and compile it like any other function.David Robillard3-23/+52
2011-05-14Tidy.David Robillard2-8/+8
2011-05-14Make currentFn private to the backend.David Robillard4-33/+25
2011-05-14Use recursive types in IR rather than fugly __REC kludge.David Robillard2-14/+9
2011-05-14Don't garbage collect types that are stored in data structures in the compile...David Robillard1-7/+15
2011-05-14Improve pretty-printing spacing (don't double space flat IR).David Robillard1-1/+5
2011-05-14Add flatten stage to generate flat s-expression IR for the (now simpler) comp...David Robillard7-91/+275
2011-05-14Don't print type annotations for def formsDavid Robillard1-0/+3
2011-05-14Parameterize compilerDavid Robillard1-5/+8
2011-05-14Disable compilation of rotting C backend.David Robillard2-3/+4
2011-05-14Update header for new Engine APIDavid Robillard1-3/+6
2011-05-14More granular if compilation API (towards assembly-like IR stage and simpler ...David Robillard2-30/+92
2011-05-13Update for LLVM 2.8.David Robillard2-13/+13
2011-05-13Don't pass 'false' for pointer parameter.David Robillard1-1/+1
2011-01-13Tidier FreeVars::index.David Robillard1-9/+4
2011-01-13Fix erroneous rejection of (def (f x) ...) forms with multiple body expressions.David Robillard1-1/+1
2011-01-13Fix crash on `(def)'.David Robillard1-4/+4
2011-01-13Fix error location reporting.David Robillard3-14/+16
2011-01-09Partially resurrect CPS translation pass.David Robillard5-123/+158
2011-01-09Set type of lifted closure component accesses.David Robillard1-1/+3
2011-01-09Don't access type stuff when type annotations are not requested.David Robillard1-1/+1
2011-01-06Update syntax highlighting script.David Robillard2-17/+18
2011-01-06Reorganize in standard SVN hierarchy.David Robillard0-0/+0
2010-12-31Fix -P (don't look at types in printer unless annotations are requested).David Robillard1-3/+7
2010-12-31Revert accidental change to ack.resp.David Robillard1-1/+1
2010-12-31Use standard LLVM optimization passes, and optimize entire module (much more ...David Robillard3-14/+18
2010-12-31Update match test case to match expected output in test.sh.David Robillard1-2/+1
2010-12-31Only compile symbols once (cache compiled symbol values specially for this).David Robillard3-10/+16
2010-12-31Compile match 'else' case to unreachable instruction.David Robillard1-5/+7
2010-12-31Report parsing errors.David Robillard2-0/+2
2010-12-31Fix parsing of #f.David Robillard2-2/+3
2010-12-31Fix crash due to recursive initialization.David Robillard1-1/+1