Garritt McCune glm94
  • Joined on 2020-12-03
glm94 pushed to main at glm94/clox 2022-03-23 14:43:55 -05:00
73067fcc1f Added statements to the Parser, currently just the Print and Expression statements. 8.1 isn't quite done yet, maybe half way there.
glm94 pushed to main at glm94/clox 2022-03-18 12:02:30 -05:00
bf59a98628 Updated the Makefile, set debug option for the compiler, and fixed all the warnings generated by gcc with O2 optimization option for release builds.
1e6bbb87d4 Cleaned up the Makefile, added the framework for checking for runtime errrors in the Interpreter and fixed a bug where I didn't close out the 'va_list' in the Match function in the Parser.
34557c92c3 Setup the Makefile to allow me to produce a release build and to create some directories if they're not there already.
b3693f17df Updated the project structure, and modified the Makefile to hopefully be future proof so I can freely make sub-folders in the src/ folder and not have to worry about breaking the Makefile.
6daaaae7c2 Fixed a bug when the scanner parses a number and creates the token.
Compare 12 commits »
glm94 pushed to interpreter at glm94/clox 2022-03-18 12:01:22 -05:00
bf59a98628 Updated the Makefile, set debug option for the compiler, and fixed all the warnings generated by gcc with O2 optimization option for release builds.
glm94 pushed to interpreter at glm94/clox 2022-03-17 13:58:32 -05:00
1e6bbb87d4 Cleaned up the Makefile, added the framework for checking for runtime errrors in the Interpreter and fixed a bug where I didn't close out the 'va_list' in the Match function in the Parser.
glm94 pushed to interpreter at glm94/clox 2022-03-16 13:23:19 -05:00
34557c92c3 Setup the Makefile to allow me to produce a release build and to create some directories if they're not there already.
glm94 pushed to interpreter at glm94/clox 2022-03-16 13:07:46 -05:00
b3693f17df Updated the project structure, and modified the Makefile to hopefully be future proof so I can freely make sub-folders in the src/ folder and not have to worry about breaking the Makefile.
glm94 pushed to interpreter at glm94/clox 2022-03-16 00:00:25 -05:00
6daaaae7c2 Fixed a bug when the scanner parses a number and creates the token.
glm94 pushed to interpreter at glm94/clox 2022-03-15 16:05:22 -05:00
b072921304 Touched up the Scanner. Refactored the Interpreter some more, this time it's able to be run on simple expressions. String concatenation can be performed by the Interpreter however, numbers and Booleans are not being stored correctly in the Object structures.
glm94 pushed to interpreter at glm94/clox 2022-03-15 15:45:15 -05:00
78e07778b1 Touched up the Scanner. Refactored the Parser some more, this time it's able to be run on simple expressions. String concatenation can be performed by the Parser however, numbers and Booleans are not being stored correctly in the Object structures.
d4dd459389 Fixed a bug with string parsing in the Scanner.
Compare 2 commits »
glm94 pushed to interpreter at glm94/clox 2022-03-14 14:20:13 -05:00
1ded68ddee Fixed a bug in the IsTruthy function. The VisitBinaryExpression now processes more operations.
glm94 pushed to interpreter at glm94/clox 2022-03-14 11:53:00 -05:00
3044f23bcc Creating an object of type Boolean should work correctly, as long as the Boolean value being passed is done so as a double*.
glm94 pushed to interpreter at glm94/clox 2022-03-09 15:14:00 -06:00
f666585f5f More refactoring trying to get this cleaned up while trying to keep it easy(ish) to extend for later chapters. I'll never take namespaces for granted again...
glm94 pushed to interpreter at glm94/clox 2022-03-08 16:08:16 -06:00
e802c57a93 Trying a more object oriented approach and created an 'Object' struct to have metadata for the values the interpreter works with.
glm94 pushed to interpreter at glm94/clox 2022-03-07 13:23:03 -06:00
2d587e75b1 Extemely broken, but all the code up to 7.3 should be here, now the refactoring begins to make it C code and not Java code.
glm94 created branch interpreter in glm94/clox 2022-03-07 13:23:03 -06:00
glm94 pushed to main at glm94/clox 2022-03-07 12:13:45 -06:00
d39d20aa6e Added a reminder in the Parser in the event of bad syntax.
glm94 pushed to main at glm94/clox 2022-03-03 13:41:52 -06:00
5ea8079090 Updated the token to more reflect what was implemented in the book. Maybe not the right way to handle it but perhaps this setup will come in handy in later chapters.
caf4f02428 Minor cleanup.
d039a26c16 Fixed some bugs with the Scanner and Parser.
7bf7304bd4 Attempting to print the expression tree. I think the printing code is fine but the Parser is bugged and not building the tree correctly.
221d575c16 Further refactoring done. The Parser runs without crashing, however it's output is still to be checked and verified.
Compare 6 commits »
glm94 pushed to refactor at glm94/clox 2022-03-03 13:39:23 -06:00
5ea8079090 Updated the token to more reflect what was implemented in the book. Maybe not the right way to handle it but perhaps this setup will come in handy in later chapters.
glm94 pushed to refactor at glm94/clox 2022-03-03 11:12:09 -06:00
caf4f02428 Minor cleanup.
glm94 pushed to refactor at glm94/clox 2022-03-02 22:31:01 -06:00
d039a26c16 Fixed some bugs with the Scanner and Parser.