aboutsummaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* The great librarificating renamePřemysl Janouch2017-05-303-658/+675
|
* "quote" -> "block"Přemysl Janouch2017-05-302-22/+27
| | | | Update README accordingly.
* Fix regression in multiplicationPřemysl Janouch2017-05-282-3/+3
|
* Update READMEPřemysl Janouch2017-05-271-9/+10
|
* Update READMEPřemysl Janouch2017-05-261-3/+4
|
* interpreter: forward "argv"Přemysl Janouch2017-05-261-2/+6
|
* Remove suckPřemysl Janouch2017-05-265-102/+99
| | | | | | struct context::arguments stank, the "arg" special form stank. The amount of lines this adds can be counted on one hand.
* Implement dynamic scopingPřemysl Janouch2017-05-263-47/+81
| | | | | | Okay, that was a PITA to not have. But I think I'm set now, feature-wise.
* Update READMEPřemysl Janouch2017-05-261-2/+6
|
* Simplify ".."Přemysl Janouch2017-05-261-3/+1
|
* Add "values"Přemysl Janouch2017-05-262-4/+13
| | | | This oneliner is way too important to be left out.
* Make and/or more usefulPřemysl Janouch2017-05-262-10/+31
| | | | Now they follow Scheme, they just aren't special forms here.
* Simplify runtime library initializationPřemysl Janouch2017-05-251-63/+52
| | | | And remove the error printing side effect, just like that, at a cost.
* Finish implementation of printingPřemysl Janouch2017-05-253-38/+100
| | | | | | | | Now readds all syntax sugar and quotes strings properly. Removed automatic line breaking and indenting since it is complicated. Removed #ifndef since it stopped making any sense.
* Fix "if"Přemysl Janouch2017-05-251-11/+18
| | | | Blocks didn't work.
* Update READMEPřemysl Janouch2017-05-251-4/+28
|
* Replace for/break with a try/throw mechanismPřemysl Janouch2017-05-252-41/+14
|
* CleanupPřemysl Janouch2017-05-252-2/+5
|
* Add try/throwPřemysl Janouch2017-05-251-0/+34
|
* Fix "-"Přemysl Janouch2017-05-251-1/+6
|
* Add "parse"Přemysl Janouch2017-05-251-0/+16
|
* Make setting "set" also return the valuePřemysl Janouch2017-05-251-0/+1
|
* Get rid of "error_is_fatal"Přemysl Janouch2017-05-251-2/+0
|
* Simplify truthy()Přemysl Janouch2017-05-241-3/+1
|
* Make the lexer follow an unsigned stringPřemysl Janouch2017-05-241-6/+6
| | | | Much safer this way, allows omitting "unsigned char" temporaries.
* Simplify the lexerPřemysl Janouch2017-05-241-73/+40
|
* Simplify item managementPřemysl Janouch2017-05-241-27/+8
|
* repl: add completionPřemysl Janouch2017-05-231-1/+30
| | | | Now it should be fairly useful despite the limitation to single lines.
* repl: highlight matching parenthesisPřemysl Janouch2017-05-231-0/+7
|
* "filter" is not a primitivePřemysl Janouch2017-05-231-31/+2
|
* Fix "unless"Přemysl Janouch2017-05-211-2/+1
| | | | Best of all is, I don't even know why it must be like that.
* Refactor argument savingPřemysl Janouch2017-05-211-16/+16
| | | | While nothing has been achieved, at least now it should be obvious.
* Fix lies in READMEPřemysl Janouch2017-05-211-4/+2
|
* Specify argument in which an error happenedPřemysl Janouch2017-05-211-9/+23
|
* Remove some ancient stupidityPřemysl Janouch2017-05-212-44/+39
|
* Reorganize evaluation codePřemysl Janouch2017-05-211-71/+67
|
* Fix crash in print_tree()Přemysl Janouch2017-05-211-1/+2
|
* Allow calling literal blocksPřemysl Janouch2017-05-211-11/+22
|
* Update READMEPřemysl Janouch2017-05-212-3/+16
|
* repl: slight refactoringPřemysl Janouch2017-05-211-22/+26
|
* Fix backtrace generationPřemysl Janouch2017-05-211-0/+1
|
* Add a REPL for toying aroundPřemysl Janouch2017-05-213-2/+76
|
* Split out the interpreterPřemysl Janouch2017-05-213-57/+77
|
* Fix combined operatorsPřemysl Janouch2017-05-211-4/+4
|
* Update READMEPřemysl Janouch2017-05-211-2/+25
|
* Add numerical comparisonsPřemysl Janouch2017-05-211-1/+37
|
* Add "ne?", "ge?", "le?", "gt?"Přemysl Janouch2017-05-211-2/+7
| | | | At least in some form.
* Add "eq?" and "lt?"Přemysl Janouch2017-05-212-3/+34
|
* Add boolean operatorsPřemysl Janouch2017-05-211-1/+26
|
* Omit trailing zeros when not necessaryPřemysl Janouch2017-05-211-15/+15
|