aboutsummaryrefslogtreecommitdiffstats
path: root/src/c.cpp
AgeCommit message (Collapse)AuthorFilesLines
2010-08-20Make AST::compile const and make Module compilation API take const AST*.David Robillard1-13/+13
git-svn-id: http://svn.drobilla.net/resp/resp@265 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-08-19Add quote to syntax (currently only a lexeme is quotable, no lists...)David Robillard1-1/+4
git-svn-id: http://svn.drobilla.net/resp/resp@262 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-08-19Coherent AString and Lexeme implementation.David Robillard1-0/+7
A Lexeme is any "token" read from input, a lexeme has not yet beeen parsed and could parse to anything, e.g. a string, an expression, a number, etc. Lexemes are not (yet?) exposed to the language or ever compiled. A String is a string literal, which can contain any character directly except " and \. There are two special escapes: \" and \\, any other character following a \ is a syntax error. Fix garbage collection of REPL objects, leading to type errors from type variable re-use because a type variable for a given AST's /address/ exists, but that address has actually been deleted and reused by new (i.e. make top level REPL expressions and types be GC roots). git-svn-id: http://svn.drobilla.net/resp/resp@261 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-04-13Better (but still not correct...) computation of lifted function ↵David Robillard1-12/+9
implementation type. git-svn-id: http://svn.drobilla.net/resp/resp@258 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-04-13Restructure as a source translation based compiler.David Robillard1-34/+30
Implement support for closures (via lambda lifting phase). git-svn-id: http://svn.drobilla.net/resp/resp@254 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-04-08Tuplr -> Resp (RESource Processing).David Robillard1-7/+7
git-svn-id: http://svn.drobilla.net/resp/resp@252 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-16Compile top level definitions to globalas.David Robillard1-0/+14
git-svn-id: http://svn.drobilla.net/resp/tuplr@239 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-16. operator for destructuring Tuples (cons).David Robillard1-0/+7
git-svn-id: http://svn.drobilla.net/resp/tuplr@236 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-16Cons.David Robillard1-0/+7
git-svn-id: http://svn.drobilla.net/resp/tuplr@235 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-15Remove some use of ATuple::size().David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/tuplr@230 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-15Remove all use of ATuple::at().David Robillard1-28/+39
git-svn-id: http://svn.drobilla.net/resp/tuplr@229 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-15Replace more use of at(0) with head().David Robillard1-6/+6
git-svn-id: http://svn.drobilla.net/resp/tuplr@228 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-15Clean up function type system.David Robillard1-4/+1
Unify function types globally, rather than construct a "generic type" locally, since this didn't take into consideration captured bindings, leaving the generic type not as solved as it could be. git-svn-id: http://svn.drobilla.net/resp/tuplr@226 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-15Better error reporting for failed function compiles (print uncompilable type).David Robillard1-4/+6
git-svn-id: http://svn.drobilla.net/resp/tuplr@224 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-14Remove unnecessary cenv.compile wrapper.David Robillard1-7/+7
Remove special treatment of symbols for compilation. Make CEnv::vals a <ASymbol*, CValue> map rather than <AST*, CValue> (only used for symbols). git-svn-id: http://svn.drobilla.net/resp/tuplr@214 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-13Remove unnecessary CEnv.precompile.David Robillard1-2/+0
git-svn-id: http://svn.drobilla.net/resp/tuplr@213 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-13Cleanup, shrink.David Robillard1-18/+18
git-svn-id: http://svn.drobilla.net/resp/tuplr@209 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-13liftCall -> compileFunction.David Robillard1-6/+8
git-svn-id: http://svn.drobilla.net/resp/tuplr@208 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-06Fix compilation.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/tuplr@200 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-06C backend.David Robillard1-0/+288
git-svn-id: http://svn.drobilla.net/resp/tuplr@199 ad02d1e2-f140-0410-9f75-f8b11f17cedd