summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeFilesLines
* Add conditional executionHEADmasterDaniel Silverstone (parasomnia chroot)2013-03-141-3/+74
| | | | | | | Add conditions and comparisons, and then an expression syntax for doing conditional evaluation -- results in us being able to write: def fib(n) = if n < 2 then 1 else fib(n-1) + fib(n-2)
* reserved names bugfixDaniel Silverstone (parasomnia chroot)2013-03-141-2/+3
|
* Fix a bug and allow runtime errors without dyingDaniel Silverstone2013-03-121-5/+10
|
* Basic function definition and invocationDaniel Silverstone2013-03-101-10/+47
|
* Added assignment statementsDaniel Silverstone2013-03-101-5/+21
|
* Added expression and statement parse trees.Daniel Silverstone2013-03-051-23/+95
| | | | | This adds expression and statement parse trees and adds a print statement. Also we introduce identifiers and define some useful mathematical constants.
* Augment parser to support expressions.Daniel Silverstone2013-03-011-17/+38
| | | | | | | This calculator can now do basic sums with + - * / and %. It supports operator precedence, parenthesised expressions and whitespace all up the wazoo.
* Parse additions and numbersDaniel Silverstone2013-02-281-2/+9
|
* Parse negative integers tooDaniel Silverstone2013-02-281-1/+2
|
* Parse positive integersDaniel Silverstone2013-02-281-1/+7
|
* Ignore some filesDaniel Silverstone2013-02-281-0/+4
|
* Pre-parsing.Daniel Silverstone2013-02-281-0/+16
| | | | | | | This is the skeleton from before we started to write the parser. You can start from here if you want to play around with writing your own calculator.
* This project is under the BSD licence at this timeDaniel Silverstone2013-02-281-0/+26