Commit Graph
83 Commits
Author SHA1 Message Date
Riyyi 6573ac0b22 Env: Add more native functions 2023-03-26 23:22:02 +02:00
Riyyi 424bbcc834 Everywhere: Add support for nil, true, false data types 2023-03-26 22:38:53 +02:00
Riyyi f132397e15 Eval: Improve correctness and error handling 2023-03-26 20:14:13 +02:00
Riyyi 58584f5bba Everywhere: Initial implementation of step3 2023-03-26 14:57:56 +02:00
Riyyi f4e388716d Meta: Improve formatting 2023-03-26 14:56:25 +02:00
Riyyi aba70beeb3 Main+Readline: Do not leak history path std::string_view 2023-03-25 22:36:02 +01:00
Riyyi 9bbf238c34 Everywhere: Put ASTNodes into a smart pointer 2023-03-25 21:35:17 +01:00
Riyyi 441fdc0564 Main: Fix history path option 2023-03-25 20:07:36 +01:00
Riyyi d772495f1a Printer: Return string instead of printing directly 2023-03-25 20:01:30 +01:00
Riyyi cc735a7a11 Eval: Fix mal test
The quote in the error message broke the step2 test.
2023-03-25 17:49:54 +01:00
Riyyi a92eede277 Main: Use GNU Readline library as the line editor 2023-03-25 15:05:29 +01:00
Riyyi 9fa6314378 Reader: Improve error reporting 2023-03-25 10:53:15 +01:00
Riyyi 9271b9fe01 Meta: Add to-dos 2023-03-24 23:40:02 +01:00
Riyyi 6c12b199e8 Eval: Add error message for invalid function calls 2023-03-24 23:30:22 +01:00
Riyyi 17fddc1cf4 Printer: Fix HashMap printing spacing 2023-03-24 23:24:18 +01:00
Riyyi c6ea42bc5d Everywhere: Pass step2 tests by supporting hash-maps 2023-03-24 22:28:31 +01:00
Riyyi 5c5a766b7e Reader+Printer: Reorder tokens 2023-03-24 21:51:11 +01:00
Riyyi da0b0a91a6 Everywhere: Start implementation of step2 2023-03-24 21:46:01 +01:00
Riyyi b51a3bf15b AST: Add ruc::Formatter for ASTNodes 2023-03-24 21:46:01 +01:00
Riyyi 27e584ea84 Everywhere: Add Keyword parsing 2023-03-24 21:46:01 +01:00
Riyyi 0fea075953 Meta: Enable pretty printing by default on run target 2023-03-24 21:46:01 +01:00
Riyyi f6f8207e1a Meta: Add license file 2023-03-23 20:33:50 +01:00
Riyyi eedfe53b96 Main: Add CLI arguments to enable pretty printing / dumping 2023-03-20 21:38:19 +01:00
Riyyi 94dcd4c50e Everywhere: Pass step1 tests by supporting more Tokens in the Reader 2023-03-20 18:11:37 +01:00
Riyyi 68303dfe7b Reader: Add support for more Tokens 2023-03-19 16:13:47 +01:00
Riyyi 9816bb3de2 Everywhere: Add Error class for generic error reporting
The Lexer can now also report errors.
2023-03-19 15:06:27 +01:00
Riyyi a8f990ed98 Main: Support pretty printing 2023-03-19 12:14:36 +01:00
Riyyi 21914c6b6a Lexer+Reader+Printer: Store strings with quotes, improve error handling 2023-03-19 12:06:04 +01:00
Riyyi 58523551c8 Lexer: Fix token types 2023-03-19 12:05:05 +01:00
Riyyi b604d7ddb5 AST: Add error node 2023-03-19 12:04:48 +01:00
Riyyi 46e037e39e Lisp: Add source 2023-03-18 23:31:59 +01:00
Riyyi 2904f24565 Meta: Add project prerequisites 2023-03-18 23:31:20 +01:00
Riyyi 88ed8bf2d7 Initial commit 2023-03-18 23:30:51 +01:00