aboutsummaryrefslogtreecommitdiffstats
path: root/src/constrain.cpp
AgeCommit message (Expand)AuthorFilesLines
2012-12-26Fix type constraints for lambdas with no arguments.David Robillard1-0/+2
2012-12-25Support multiple ellipses in macros.David Robillard1-2/+10
2012-12-25Use C++11 range-based for loops.David Robillard1-7/+7
2012-12-23Move towards standard Scheme syntax.David Robillard1-3/+3
2012-12-15Compile constructors as LLVM struct types.David Robillard1-4/+4
2012-12-14Real implementation of algebraic data types, and parametric types.David Robillard1-47/+84
2010-12-29Destructuring (i.e. working `match').David Robillard1-1/+11
2010-12-29Literal lists (i.e. list quoting).David Robillard1-8/+21
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-0/+13
2010-12-27Remove weird __tag_is form by adding a T_LITSYM type and using = operator.David Robillard1-0/+1
2010-12-27Kill AType.David Robillard1-43/+40
2010-12-26More sensible check for Fn type.David Robillard1-3/+1
2010-12-26Update headers.David Robillard1-2/+2
2010-12-09Fix cpplint warnings.David Robillard1-0/+2
2010-12-09Add let form.David Robillard1-0/+33
2010-12-09Sort code.David Robillard1-114/+114
2010-12-09Make environment always referenced by symbols.David Robillard1-6/+6
2010-12-08Clean up function compilation stuff.David Robillard1-1/+1
2010-12-07Saner recursive descent lexer/parser.David Robillard1-12/+0
2010-12-04More const-correctness (remove all use of const_cast).David Robillard1-9/+9
2010-12-03Remove use of RTTI for AST.David Robillard1-22/+24
2010-12-03Merge AST::operator==David Robillard1-0/+1
2010-12-03Remove AST::constrain.David Robillard1-54/+61
2010-12-03Merge ACall and ATuple.David Robillard1-24/+12
2010-12-03Remove AFn.David Robillard1-9/+13
2010-12-02Remove ACall subclasses.David Robillard1-55/+57
2010-12-02Remove use of ACall subclasses for contrain phase.David Robillard1-108/+140
2010-12-02Work towards removing different classes for each type of expression.David Robillard1-4/+4
2010-12-02Represent code as list structure (i.e. traditional LISP lists built from pair...David Robillard1-51/+56
2010-09-30Preliminary work on algebraic data types and run-time typing.David Robillard1-5/+74
2010-08-19Generalise `cons': a call to any symbol beginning with an uppercase characterDavid Robillard1-1/+2
2010-08-19Add quote to syntax (currently only a lexeme is quotable, no lists...)David Robillard1-0/+7
2010-08-19Coherent AString and Lexeme implementation.David Robillard1-0/+6
2010-08-18Give `def' statements type `Nothing.David Robillard1-0/+1
2010-04-13Better error reporting when unification fails (report both locations, and pre...David Robillard1-2/+1
2010-04-13Restructure as a source translation based compiler.David Robillard1-17/+16
2010-04-08Exception specifiers.David Robillard1-11/+11
2010-04-08Tuplr -> Resp (RESource Processing).David Robillard1-5/+5
2009-10-16Make ellipses a new kind (AType::DOTS).David Robillard1-1/+1
2009-10-16. operator for destructuring Tuples (cons).David Robillard1-0/+21
2009-10-16Cons.David Robillard1-0/+12
2009-10-15Type and const correct Subst::apply.David Robillard1-4/+3
2009-10-15Remove all use of ATuple::at().David Robillard1-30/+43
2009-10-15Replace use of ATuple::at(0) with ATuple::head().David Robillard1-6/+6
2009-10-15Clean up function type system.David Robillard1-50/+37
2009-10-15Always use error-checking (and terser) Constraints::constrain over push_back.David Robillard1-4/+4
2009-10-15Make TEnv purely a type environment.David Robillard1-6/+5
2009-10-14Fix compilation (oops).David Robillard1-1/+1
2009-10-14Clean up ACall::constrain and stick to type domain for error reporting.David Robillard1-20/+15