128 Commits (master)
 

Author SHA1 Message Date
Riyyi 8aa540c4e5 Env: Core function (get) should work on nil value 1 year ago
Riyyi e09f168d4f AST: HashMap inserts should overwrite existing keys 1 year ago
Riyyi 6980d28b36 Main: Add step9 file 1 year ago
Riyyi 2a16f5ddf5 AST+Env: Add more core functions 1 year ago
Riyyi f89e73d44a AST+Env: Add default constructor to Constant 1 year ago
Riyyi c8b1e6dc81 AST+Lexer: Move Keyword prefix character to the constructor 1 year ago
Riyyi c279f9111e Eval: Only need to cast AST once 1 year ago
Riyyi 2b260d7b43 Everywhere: Implement step8 1 year ago
Riyyi 27d6e24243 Eval+Env: Make use of macros for duplicate logic 1 year ago
Riyyi b4742ef380 Reader: Improve HashMap logic 1 year ago
Riyyi 082a029957 AST+Eval: Provide convenient constructor for Collection 1 year ago
Riyyi 80e0437a5c Main+Eval+AST: Implement step7 1 year ago
Riyyi ba7281b6f1 Main: Add ability to run script from the command line, add *ARGV* 1 year ago
Riyyi b9feb8e8b6 Everywhere: Rename Value -> Constant, ASTNode -> Value 1 year ago
Riyyi e39862fe9f Meta: Add symlink to pass more tests 1 year ago
Riyyi 93af6151fa Env: Add more core functions 1 year ago
Riyyi 9b14ea974a AST: Make parent type for Function and Lambda 1 year ago
Riyyi 25d6f45329 AST: Do not try to store nullptr in a Collection or HashMap 1 year ago
Riyyi 835669c4eb AST: Add Atom data type 1 year ago
Riyyi 22920cb810 Main+Env: Add more native functions 1 year ago
Riyyi 3d5a2e3fbe AST: Make fastIf functions private 1 year ago
Riyyi 088c5f0248 Lexer: Support newline characters in strings 1 year ago
Riyyi 03918b036d AST: Rename function addElement -> add 1 year ago
Riyyi 5f49f08eea AST: Make more const 1 year ago
Riyyi ed9fa1698e Main: Add step6 .cpp file 1 year ago
Riyyi f35fea9fa4 Env: Fix function argument size error message 1 year ago
Riyyi 6e1557ff8c Printer: Fix HashMap printing 1 year ago
Riyyi 21f0d8fbd8 Eval: Move logic from defines back into functions 1 year ago
Riyyi 4d3c2a4ca2 Eval: Implement tail call optimization (TCO) via stack iteration 1 year ago
Riyyi 7c62d65d72 Main+Eval: Implement tail call optimization (TCO) 1 year ago
Riyyi f0f4ba45b0 Eval: Improve logic sharing between List and Vector 1 year ago
Riyyi 826af24561 Main+Env+Printer: Remove the GlobalEnvironment subclass 1 year ago
Riyyi c53c0af5a2 Everywhere: Rename addNode and addError functions -> add 1 year ago
Riyyi 14367fa5a7 Eval+Env: Add support for variadic lambda parameters 1 year ago
Riyyi e47b338984 Eval: Forward declare List 1 year ago
Riyyi 30b120befc Eval+Env: Improve logic sharing between List and Vector 1 year ago
Riyyi 90d6ff7d18 Printer: Pass along readably flag during recursion 1 year ago
Riyyi a60859acc4 Eval+Env: Add support for lambdas 1 year ago
Riyyi 1e76d4599a Meta+Env: Fix count on nil value 1 year ago
Riyyi bbced6f487 Eval: Add special form "if" 1 year ago
Riyyi 38d8daa9d0 Eval: Add special form "do" 1 year ago
Riyyi 35a32678d0 Everywhere: Convert List and Vector to an std::list<> datatype 1 year ago
Riyyi de2a207fcb AST: Reorder classes 1 year ago
Riyyi 9c1c5114a9 Env: Add equal function 1 year ago
Riyyi c1e4b6c6d1 Lexer+Printer: Support string print readably 1 year ago
Riyyi 6573ac0b22 Env: Add more native functions 1 year ago
Riyyi 424bbcc834 Everywhere: Add support for nil, true, false data types 1 year ago
Riyyi f132397e15 Eval: Improve correctness and error handling 1 year ago
Riyyi 58584f5bba Everywhere: Initial implementation of step3 1 year ago
Riyyi f4e388716d Meta: Improve formatting 1 year ago