b028741d75- String Concatenation is now possible. - Added test to ensure only '+' will work for concatenating strings - Likkle reformatting.tijani2022-11-03 15:01:40 +0000
2c2c936b29String Implementation is done. Still has TODO that would make for good excercise.tijani2022-11-03 14:23:07 +0000
2791a27f1fBuilt-in datatypes: Added String The parser now understands what a strings is and can take a string literal and curn out an Stringliteral AST nodes.tijani2022-11-03 11:11:42 +0000
05d2c32b38Formatting. Monk also supports first-class functionstijani2022-08-26 19:01:31 +0000
cdf36e8211Monk now fully supports Functions, Function calls and closures.tijani2022-08-26 19:00:32 +0000
7fcea2117fImplemented environments which is just a hash map to keep track of values in the language.tijani2022-08-19 07:18:37 +0000
d38f4dec8aTests - Ensure value producing expression in a let statement and also identifiers bound to a variable name. - Tests to ensure valid errors with unbound identifierstijani2022-08-18 14:32:13 +0000
dd030ebd4bThis allows tracing information to be displayed. STRICTLY FOR TESTING ONLY, SHOULD BE TURNED OFF IN THE ACTUAL INTERPRETER.tijani2022-06-01 14:20:16 +0000
982efec3d0- Formatting. - Tracing information now displayed to better visualize how the program works.tijani2022-05-31 17:38:50 +0000
e5d95dc7b6- Infix operator parsing is now possible.tijani2022-05-31 15:01:43 +0000
45f6929c14Started implementing Pratt Parsing, tests now pass that can generate on Infix and Integer expressions.tijani2022-05-30 17:40:03 +0000
e456189c86ExpressionStatement in the AST to represent the typse of expressions that is supported in monkey. Hand written test in the AST to test the String() function for accuracytijani2022-05-30 05:51:27 +0000
fdf6a8a552- Some minor formatting. - Parser can now handle return statements.tijani2022-05-27 15:07:19 +0000
1ea1289b7aREAD-EVALUATE-PRINT-LOOP now works and spits out tokens of input. YAY!!!tijani2022-05-12 22:39:29 +0000
ee8ab63809Rename new -> New and next_token -> NextToken, because of go's weird requirement that first letter of public methods in a package that would be used in another package must be capitalized.tijani2022-05-12 22:38:47 +0000
cebc052f32- The lexer can now peek forward into the input stream. - Added the rest of the basic math operators. - Added > and <. - Test, Test, Test. - Added if, else, return, true, false. - Lexer can now differentiate between '=' and '==' and '!' and '!='.tijani2022-05-12 22:04:29 +0000
44d9b2c7ecMonkey can now lex its basic types and keywords.tijani2022-05-12 20:51:16 +0000