aboutsummaryrefslogtreecommitdiffstats
path: root/src
AgeCommit message (Collapse)AuthorFilesLines
2011-01-13Fix error location reporting.David Robillard3-14/+16
git-svn-id: http://svn.drobilla.net/resp/trunk@406 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2011-01-09Partially resurrect CPS translation pass.David Robillard4-123/+157
git-svn-id: http://svn.drobilla.net/resp/trunk@405 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2011-01-09Set type of lifted closure component accesses.David Robillard1-1/+3
git-svn-id: http://svn.drobilla.net/resp/trunk@404 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2011-01-09Don't access type stuff when type annotations are not requested.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/trunk@403 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Fix -P (don't look at types in printer unless annotations are requested).David Robillard1-3/+7
git-svn-id: http://svn.drobilla.net/resp/resp@400 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Use standard LLVM optimization passes, and optimize entire module (much more ↵David Robillard1-11/+15
aggressive optimization than previous code). git-svn-id: http://svn.drobilla.net/resp/resp@398 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Only compile symbols once (cache compiled symbol values specially for this).David Robillard2-5/+7
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-31Compile match 'else' case to unreachable instruction.David Robillard1-5/+7
git-svn-id: http://svn.drobilla.net/resp/resp@395 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Report parsing errors.David Robillard2-0/+2
git-svn-id: http://svn.drobilla.net/resp/resp@394 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Fix parsing of #f.David Robillard2-2/+3
git-svn-id: http://svn.drobilla.net/resp/resp@393 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Fix crash due to recursive initialization.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/resp@392 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Saner type unification.David Robillard1-13/+3
git-svn-id: http://svn.drobilla.net/resp/resp@391 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Print fn parameter type annotations correctly.David Robillard1-9/+16
git-svn-id: http://svn.drobilla.net/resp/resp@390 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Only print def type annotations when requested.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/resp@389 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Define named (and possibly recursive) types for closures and functions.David Robillard5-36/+131
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-31Don't execute code if -S is given.David Robillard1-1/+2
git-svn-id: http://svn.drobilla.net/resp/resp@387 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Remove unused Engine::objectType().David Robillard3-18/+0
git-svn-id: http://svn.drobilla.net/resp/resp@386 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-31Remove duplicated type compilation code.David Robillard1-26/+4
git-svn-id: http://svn.drobilla.net/resp/resp@385 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Add rrst().David Robillard1-0/+1
git-svn-id: http://svn.drobilla.net/resp/resp@384 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30More human readable names for allocated memory in output IR.David Robillard1-2/+3
git-svn-id: http://svn.drobilla.net/resp/resp@383 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Less code.David Robillard1-5/+2
git-svn-id: http://svn.drobilla.net/resp/resp@382 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Abbreviate (def (fn ...))David Robillard1-7/+17
git-svn-id: http://svn.drobilla.net/resp/resp@381 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Fix calling inline fn expressions (don't allocate closure twice).David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/resp@380 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Pretty-print annotations.David Robillard1-11/+11
git-svn-id: http://svn.drobilla.net/resp/resp@379 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Separate all top-level expressions by a blank line.David Robillard1-2/+3
git-svn-id: http://svn.drobilla.net/resp/resp@378 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Fix bug in previous commit.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/resp@377 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Fix crash at expand phase when def contains no body.David Robillard1-2/+1
git-svn-id: http://svn.drobilla.net/resp/resp@376 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-30Rename allocation function to __resp_alloc.David Robillard3-3/+3
git-svn-id: http://svn.drobilla.net/resp/resp@375 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Destructuring (i.e. working `match').David Robillard7-12/+94
git-svn-id: http://svn.drobilla.net/resp/resp@374 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Always print first argument on next line if callee is a list.David Robillard1-5/+10
git-svn-id: http://svn.drobilla.net/resp/resp@373 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Don't add __unreachable to free vars.David Robillard1-1/+1
git-svn-id: http://svn.drobilla.net/resp/resp@372 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Improve pretty-printing (fix broken indent when call head is a list).David Robillard1-10/+28
git-svn-id: http://svn.drobilla.net/resp/resp@371 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Less code.David Robillard1-9/+2
git-svn-id: http://svn.drobilla.net/resp/resp@370 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-29Literal lists (i.e. list quoting).David Robillard9-80/+231
Compile type expressions. Only compile a top-level function if program has code to run (i.e. isn't just definitions). Cast tuples to Object when necessary to avoid LLVM IR type mismatches (for cons stores and return values). Fix memory leaks. git-svn-id: http://svn.drobilla.net/resp/resp@369 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-28Avoid string copy (store const char* for command line filenames instead of ↵David Robillard1-8/+9
std::string). git-svn-id: http://svn.drobilla.net/resp/resp@368 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-28Fix crash when def name is not a symbol.David Robillard1-3/+3
git-svn-id: http://svn.drobilla.net/resp/resp@367 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-28Use fst ("first") instead of head and rst ("rest") instead of tail.David Robillard10-46/+38
git-svn-id: http://svn.drobilla.net/resp/resp@366 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-28Add quote form, to allow expressions literal symbols and lists (lists not ↵David Robillard7-4/+52
yet implemented). Quoting is a thin lexical concept - a quote of a symbol/list compiles to a symbol/list, rather than interpreted as code (i.e. a variable/call, respectively). A quote of anything else is equivalent to its quotee, e.g. a quote of a String is simply that string (the quote is removed at an early stage by the compiler). There is no Quote data type, or explicit unquoting, or anything like that. git-svn-id: http://svn.drobilla.net/resp/resp@365 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-28Print type annotations for top-level expressions when -a is given.David Robillard1-9/+14
git-svn-id: http://svn.drobilla.net/resp/resp@364 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-28Tidy.David Robillard1-15/+15
git-svn-id: http://svn.drobilla.net/resp/resp@363 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-27Remove weird __tag_is form by adding a T_LITSYM type and using = operator.David Robillard9-45/+30
Step towards having first class symbols... git-svn-id: http://svn.drobilla.net/resp/resp@362 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-27Less code.David Robillard1-38/+18
git-svn-id: http://svn.drobilla.net/resp/resp@361 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-27Make ATuple a normal LISPey cons cell (it always was anyway).David Robillard5-40/+26
git-svn-id: http://svn.drobilla.net/resp/resp@360 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-27Kill AType.David Robillard14-429/+394
git-svn-id: http://svn.drobilla.net/resp/resp@359 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-26Remove AType::DOTS.David Robillard3-7/+13
git-svn-id: http://svn.drobilla.net/resp/resp@358 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-26Remove AType::PRIM.David Robillard5-15/+12
git-svn-id: http://svn.drobilla.net/resp/resp@357 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-26Remove apparently unnecessary concrete_type.David Robillard1-18/+2
git-svn-id: http://svn.drobilla.net/resp/resp@356 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-26More sensible check for Fn type.David Robillard1-3/+1
git-svn-id: http://svn.drobilla.net/resp/resp@355 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-26Remove AType copy constructor.David Robillard3-9/+6
git-svn-id: http://svn.drobilla.net/resp/resp@354 ad02d1e2-f140-0410-9f75-f8b11f17cedd
2010-12-26Begin killing AType.David Robillard1-17/+17
git-svn-id: http://svn.drobilla.net/resp/resp@353 ad02d1e2-f140-0410-9f75-f8b11f17cedd