aboutsummaryrefslogtreecommitdiffstats
path: root/test
AgeCommit message (Collapse)AuthorFilesLines
2012-12-25Preliminary syntax-rules macro implementation.David Robillard1-0/+8
git-svn-id: http://svn.drobilla.net/resp/trunk@443 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2012-12-23Move towards standard Scheme syntax.David Robillard21-46/+46
git-svn-id: http://svn.drobilla.net/resp/trunk@442 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2012-12-17Fix calling functions that lexically enclose the current function.David Robillard1-14/+13
In particular this makes it possible to walk lists with match, since match clauses expand to fns. git-svn-id: http://svn.drobilla.net/resp/trunk@441 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2012-12-15Compile constructors as LLVM struct types.David Robillard1-0/+25
Use LLVM type names instead of hyper verbose literal types in more places in general. More work on quoting. git-svn-id: http://svn.drobilla.net/resp/trunk@439 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2011-01-06Update syntax highlighting script.David Robillard1-3/+4
git-svn-id: http://svn.drobilla.net/resp/trunk@402 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Revert accidental change to ack.resp.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/resp@399 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Use standard LLVM optimization passes, and optimize entire module (much more ↵David Robillard1-1/+1
aggressive optimization than previous code). git-svn-id: http://svn.drobilla.net/resp/resp@398 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Update match test case to match expected output in test.sh.David Robillard1-2/+1
git-svn-id: http://svn.drobilla.net/resp/resp@397 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Only compile symbols once (cache compiled symbol values specially for this).David Robillard1-5/+9
Working pattern matching / deconstruction when object is a function parameter. git-svn-id: http://svn.drobilla.net/resp/resp@396 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Define named (and possibly recursive) types for closures and functions.David Robillard1-1/+2
Compile type definitions all the way to LLVM IR (including recursive types). git-svn-id: http://svn.drobilla.net/resp/resp@388 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Destructuring (i.e. working `match').David Robillard1-9/+5
git-svn-id: http://svn.drobilla.net/resp/resp@374 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-25Add let-over-lambda test case.David Robillard1-0/+7
git-svn-id: http://svn.drobilla.net/resp/resp@350 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-09Revert accidental change.David Robillard1-2/+0
git-svn-id: http://svn.drobilla.net/resp/resp@337 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-09Document the free variable implementation (mostly in lift_symbol) better.David Robillard1-0/+2
git-svn-id: http://svn.drobilla.net/resp/resp@335 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-09Remove wildly outdated and false intro.resp.David Robillard1-148/+0
git-svn-id: http://svn.drobilla.net/resp/resp@332 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-09Add let form.David Robillard1-0/+7
git-svn-id: http://svn.drobilla.net/resp/resp@328 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-07Saner recursive descent lexer/parser.David Robillard1-3/+0
git-svn-id: http://svn.drobilla.net/resp/resp@306 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-09-30Preliminary work on algebraic data types and run-time typing.David Robillard1-0/+14
git-svn-id: http://svn.drobilla.net/resp/resp@270 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-08-19Generalise `cons': a call to any symbol beginning with an uppercase characterDavid Robillard1-1/+1
(i.e. a type symbol), e.g. (Thing 2), is a call to a type constructor which creates a Tup containing the arguments, with the symbol as the first element in the type expression, e.g. (Thing 2) has type (Thing Int) and compiles to a tuple containing a single Int. The type constructor `Tup' can be used as a `cons' replacement to construct generic tuples. git-svn-id: http://svn.drobilla.net/resp/resp@264 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-08-19Add quote to syntax (currently only a lexeme is quotable, no lists...)David Robillard1-0/+3
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/+4
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 error reporting when unification fails (report both locations, and ↵David Robillard1-1/+1
preserve locations during substitution). git-svn-id: http://svn.drobilla.net/resp/resp@256 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-04-13Restructure as a source translation based compiler.David Robillard5-3/+12
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 Robillard7-2/+2
git-svn-id: http://svn.drobilla.net/resp/resp@252 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-16Make ellipses a new kind (AType::DOTS).David Robillard1-0/+4
git-svn-id: http://svn.drobilla.net/resp/tuplr@238 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-10-16. operator for destructuring Tuples (cons).David Robillard1-0/+2
git-svn-id: http://svn.drobilla.net/resp/tuplr@236 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-06-19Remove crufty cons/car/cdr implementation that doesn't work anyway.David Robillard1-3/+0
git-svn-id: http://svn.drobilla.net/resp/tuplr@128 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-06-19Add quick kludgey test suite.David Robillard4-0/+168
git-svn-id: http://svn.drobilla.net/resp/tuplr@127 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-06-18Primitive internal macro system (for implementing sugar).David Robillard2-8/+7
(def (f x) ...) sugar. git-svn-id: http://svn.drobilla.net/resp/tuplr@119 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2009-03-30Compile things into separate build dir.David Robillard3-0/+18
Move .tpr files to test dir. git-svn-id: http://svn.drobilla.net/resp/tuplr@109 ad02d1e2-f140-0410-9f75-f8b11f17cedd