aboutsummaryrefslogtreecommitdiffstats
path: root/src/compile.cpp
AgeCommit message (Expand)AuthorFilesLines
2012-12-14Real implementation of algebraic data types, and parametric types.David Robillard1-0/+4
2012-10-15Update for LLVM 3.1David Robillard1-1/+2
2011-05-15Simplify compile_cons.David Robillard1-11/+6
2011-05-15Remove cast form (unnecessary since compile stage casts paramters as needed a...David Robillard1-10/+5
2011-05-15Generate code entirely via emitting flat IR (don't special case main/repl).David Robillard1-7/+11
2011-05-14Fix global set/get (top level variable definitions in the REPL).David Robillard1-1/+7
2011-05-14Make currentFn private to the backend.David Robillard1-24/+10
2011-05-14Add flatten stage to generate flat s-expression IR for the (now simpler) comp...David Robillard1-70/+44
2011-05-14More granular if compilation API (towards assembly-like IR stage and simpler ...David Robillard1-1/+11
2010-12-31Only compile symbols once (cache compiled symbol values specially for this).David Robillard1-5/+4
2010-12-31Define named (and possibly recursive) types for closures and functions.David Robillard1-6/+12
2010-12-29Destructuring (i.e. working `match').David Robillard1-2/+23
2010-12-29Literal lists (i.e. list quoting).David Robillard1-3/+17
2010-12-28Use fst ("first") instead of head and rst ("rest") instead of tail.David Robillard1-5/+5
2010-12-28Add quote form, to allow expressions literal symbols and lists (lists not yet...David Robillard1-1/+15
2010-12-27Remove weird __tag_is form by adding a T_LITSYM type and using = operator.David Robillard1-17/+12
2010-12-27Kill AType.David Robillard1-28/+29
2010-12-26Update headers.David Robillard1-1/+1
2010-12-25Simplify let to fn, rather than deal with it through to compilation.David Robillard1-26/+14
2010-12-10Simplify if into nested 2-branch (scheme style) ifs at simplify stage.David Robillard1-14/+3
2010-12-10Convert match form to if at lift stage (remove knowledge of match from compil...David Robillard1-22/+11
2010-12-09Strip trailing whitespace.David Robillard1-8/+8
2010-12-09Fix cpplint warnings.David Robillard1-0/+3
2010-12-09Add let form.David Robillard1-0/+24
2010-12-09Sort code.David Robillard1-78/+78
2010-12-09Make environment always referenced by symbols.David Robillard1-2/+2
2010-12-09Consistent engine global[Set|Get] interface.David Robillard1-2/+2
2010-12-09Clean up engine code.David Robillard1-3/+3
2010-12-08Remove Engine::compileMatch.David Robillard1-1/+23
2010-12-08Eliminate some backend specific code in LLVMEngine::compileMatch (towards mov...David Robillard1-1/+1
2010-12-08Remove Engine::compileIfDavid Robillard1-1/+19
2010-12-08Consistent naming for Engine compile methods.David Robillard1-1/+1
2010-12-08Clean up function compilation stuff.David Robillard1-11/+8
2010-12-08compileTup => compileConsDavid Robillard1-1/+1
2010-12-07Saner recursive descent lexer/parser.David Robillard1-4/+0
2010-12-04More const-correctness (remove all use of const_cast).David Robillard1-2/+2
2010-12-03Remove use of RTTI for AST.David Robillard1-30/+27
2010-12-03Make AString, ALexeme, and ASymbol all contain (rather than inherit from) std...David Robillard1-2/+2
2010-12-03Merge ACall and ATuple.David Robillard1-8/+8
2010-12-03Remove AFn.David Robillard1-8/+6
2010-12-02Remove ACall subclasses.David Robillard1-7/+5
2010-12-02Remove use of ACall class hierarchy from compile phase.David Robillard1-49/+39
2010-12-02Remove use of ACall subclasses for contrain phase.David Robillard1-5/+6
2010-12-02Work towards removing different classes for each type of expression.David Robillard1-88/+109
2010-12-02Represent code as list structure (i.e. traditional LISP lists built from pair...David Robillard1-9/+10
2010-09-30Preliminary work on algebraic data types and run-time typing.David Robillard1-8/+26
2010-08-22Simplify Engine function compilation interface.David Robillard1-1/+20
2010-08-22Simplify Engine::startFunction.David Robillard1-5/+6
2010-08-20Make AST::compile const and make Module compilation API take const AST*.David Robillard1-13/+13
2010-08-19Add quote to syntax (currently only a lexeme is quotable, no lists...)David Robillard1-0/+16