6a96a3dd25
Update name change.
2024-08-28 19:31:35 -05:00
d9d8a27568
puts()
...
Can now print out to STDOUT. puts() return NULL, its only business is to print.
git-svn-id: https://svn.tlawal.org/svn/monkey@66 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2023-08-14 22:39:08 +00:00
831b333a74
Built-in Functions: len()
...
Will take in a string a string and return the length of said string. This function only accepts one
argument. This function only accepts strings. Any other type will result in an error.
git-svn-id: https://svn.tlawal.org/svn/monkey@65 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2023-08-14 19:40:04 +00:00
64e048dfcd
String concatenation now a thing.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@64 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2023-05-09 23:57:45 +00:00
ec6c1ce5aa
Now supports strings.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@63 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2023-05-09 19:59:18 +00:00
4f3ef7d314
Interpreter complete.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@62 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2023-05-05 19:15:39 +00:00
40de215f70
Built-in functions:
...
len() added
git-svn-id: https://svn.tlawal.org/svn/monkey@59 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-11-11 20:30:15 +00:00
b028741d75
- String Concatenation is now possible.
...
- Added test to ensure only '+' will work for concatenating strings
- Likkle reformatting.
git-svn-id: https://svn.tlawal.org/svn/monkey@58 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-11-03 15:01:40 +00:00
2c2c936b29
String Implementation is done. Still has TODO that would make for good excercise.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@57 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-11-03 14:23:07 +00:00
05d2c32b38
Formatting.
...
Monk also supports first-class functions
git-svn-id: https://svn.tlawal.org/svn/monkey@55 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-26 19:01:31 +00:00
cdf36e8211
Monk now fully supports Functions, Function calls and closures.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@54 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-26 19:00:32 +00:00
6f00316b43
Typo
...
git-svn-id: https://svn.tlawal.org/svn/monkey@53 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-19 07:49:24 +00:00
7fcea2117f
Implemented environments which is just a hash map to keep track of values in the language.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@52 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-19 07:18:37 +00:00
d38f4dec8a
Tests
...
- Ensure value producing expression in a let statement and also identifiers bound to a
variable name.
- Tests to ensure valid errors with unbound identifiers
git-svn-id: https://svn.tlawal.org/svn/monkey@51 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-18 14:32:13 +00:00
44612f0756
Error handling
...
git-svn-id: https://svn.tlawal.org/svn/monkey@50 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-11 06:55:07 +00:00
5456f60038
Infix Expression, Prefix Expression, Return Statement.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@49 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-11 05:04:44 +00:00
a170eb4450
Infix evaluation operation now supported.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@47 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-08 11:01:32 +00:00
4b67c7d6e1
Implement the "!" evaluation operator
...
git-svn-id: https://svn.tlawal.org/svn/monkey@46 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-08 10:14:14 +00:00
886a16e706
Spelling corrections
...
Interpreter can now evaluate Booleans
git-svn-id: https://svn.tlawal.org/svn/monkey@45 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-07 14:58:35 +00:00
1b97196361
Evaluation - Integer evaluation now works, got basically a REPL going on.
...
git-svn-id: https://svn.tlawal.org/svn/monkey@44 f6afcba9-9ef1-4bdd-9b72-7484f5705bac
2022-08-07 14:44:11 +00:00