summaryrefslogtreecommitdiff
path: root/src/parser.cpp (unfollow)
AgeCommit message (Collapse)Author
2016-12-01Forgot assignment and negation. They both work now.Mike Buland
That was actually really cool. Now to clean up the debugging code and write the execution engine.
2016-12-01The parser works.Mike Buland
There's still more to do, however. It doesn't do math anymore, it produces a script that can then be executed. Now we have to capture that script and execute it.
2016-12-01Disabled unit tests, they rely on old API.Mike Buland
These will have to be updated later.
2016-12-01New layout for the parser, it doesn't parse yet.Mike Buland
2016-11-30I managed to confuse myself pretty well.Mike Buland
I'm doing some reading up on LR(n) parsers, I just sort of started without thinking about it this time, not a great approach. I feel like it can't hurt to have an update on how this works anyway. I think the idea was solid, but I was trying to do too much at once. One question is what my goal should be for this. I could just solve the equation as we go, or I could generate code that will let us solve the equation. The later is obviously attractive in that it will let us run an expression more than once, and maybe even define functions. I like that.
2016-11-30Working on the parser, some issues.Mike Buland
2016-11-23Added new helpers for lookahead.Mike Buland
2015-07-23Actually added a makefile with dep support.Mike Buland
Also updated the gitignore to ignore the dep files.
2015-07-23Just a tweak to the lexer to make some errors nicer.Mike Buland
2015-01-29Minor tweak to some display text.Mike Buland
2015-01-29Fixed nasty subtraction bug when dealing with fractions.0.13Mike Buland
It turned out to be a really simple solution, but man, that was embarassing. I forgot to include the fractional portion of a number when fixing my radix+1 compliment numbers.
2015-01-07Fixed parsing bug, added unit tests, debug cleanup.0.12Mike Buland
There was an issue with order of operations outside of parenthesies, easily solved.
2014-12-01Added "--sum" command line option.Mike Buland
Reads in a list of numbers on standard in, one per line, and sums them.
2014-11-28Division fixes, better config, more tests.0.11Mike Buland
Other minor fixes and options such as --version being added.
2014-11-28build builds the datafiles class now.Mike Buland
Added a little bit of help, too.
2014-11-28Switched to using bin2cpp for the help.Mike Buland
I think that's a better practice, it'll be a lot easier to expand it and format it in general, plus it could be compressed if it got too much bigger.
2014-11-25Added a new 'execute' command line parameter.Mike Buland
2014-11-24Fixed an annoying parsing bug.0.10Mike Buland
2014-11-03Made x/0 return 0 for now.Mike Buland
I have to decide how to handle special values like that, but for now it's better that it doesn't go into an infinite loop.
2014-10-31Added more tests, keep everything on the up and upMike Buland
2014-10-31Corrected issue with particular sequences of zeros.Mike Buland
No more known division issues.
2014-10-30Maybe better? conversions aren't always good.Mike Buland
I'm not sure what part is broken yet though.
2014-10-30Used the new cuter sign logic in multiply.Mike Buland
2014-10-30Better comments!Mike Buland
2014-10-30Updated version number.0.09Mike Buland
2014-10-30Fixed remaining known division issues.Mike Buland
It looks great, and works with everything I can think of so far.
2014-10-30Divisors between 0 and 1 break division now.Mike Buland
2014-10-30The new division works great!Mike Buland
Other minor bug fixes including scale issues, digit() access stopped a digit before the final possible digit in the scale, >, >=, <, <= all work correctly with mixed scale numbers now, probably other fixes.
2014-09-26Added tests that fail for division.Mike Buland
We need a new division routine.
2014-09-17Added a unit test that breaks divide.Mike Buland
2014-09-17Issues with small decimal numbers were in toString.Mike Buland
It was bailing on very small numbers with only one decimal point of precision, which is silly. This has been fixed.
2013-11-14Fixed (?) parsing order of operations bug, added unit tests.Mike Buland
2013-11-13Forgot to update the version number again.Mike Buland
2013-11-13Added debugging to parser, and disabled debug flag.0.08Mike Buland
2013-11-13Corrected silly bug in variable assignment.Mike Buland
2013-05-22Some compilers need an extra header.Mike Buland
Should probably include that extra header.
2013-05-17The --text-primes option supports a parameter.Mike Buland
You can tell it where to start now.
2013-05-10Added more helpers to Number.0.07Mike Buland
2013-05-10Added more checking & unit-tests.Mike Buland
2013-05-09Added Number::toRadix & Number::set( int32_t ).Mike Buland
Both very handy. I'll add other numeric setters later, it was very easy.
2013-05-09Added better filtering in Number::set, and cli options.Mike Buland
The command line options let you set the initial radix/scale, and there's a function te test if any number is prime, that's fun.
2013-05-08Added a funny option to generate primes.Mike Buland
...But primes in base 36 and it skips all numbers with digits in the range 0-9
2013-05-08Forgot to change the version number in the code.Mike Buland
This doesn't really matter for this project right now. I keep forgetting because other ones auto-generate the code from 'git describe'
2013-05-08Command parameters are taken as strings & decimal.0.06Mike Buland
You no longer need to set the radix in the current radix.
2013-04-24Updated version header.0.05Mike Buland
2013-04-24Fixed order of operations bug.Mike Buland
2013-04-23Now supports modulus (strange for fractions).Mike Buland
2013-04-23Updated the version and startup banner.0.04Mike Buland
2013-04-23Variables work.Mike Buland
2013-04-23Fixed random zeros bug.0.03Mike Buland
They weren't that random, the resize routine in PackedIntArray was written poorly. It was growing too much and computing the size of the original array incorrectly, so not all the data was being copied every time.