39 Commits

Author SHA1 Message Date
482f2b4877 Big refactor to unclutter ast.h.
Moves all print functions to own file for sanity.

Also, just hit 2,000 lines; nice.
2025-06-28 12:25:10 -04:00
289243de38 Added lambda parsing. 2025-06-28 11:15:21 -04:00
d4293e87f3 Everything works. 2025-06-14 10:02:04 -04:00
abb8ff6b58 Finished garbage collector.
🎉
2025-06-14 09:23:49 -04:00
a4afd3b58a Fixed segfault on spacey input. 2025-05-31 18:25:11 -04:00
90c8c91410 Somethings working. 2025-05-31 18:19:04 -04:00
f5ab0e9cb0 Fixed memory leak. 2025-05-24 10:52:27 -04:00
0fb1f1d55f Began work on garbage collector. 2025-05-24 10:37:29 -04:00
1d83aa65a4 Well it mostly works now.
Fixed some memory leaks. Implemented some memory leaks.

May need to look into garbage collection in the future.
2025-05-17 11:01:20 -04:00
3f30662cde Fixed some memory bugs. 2025-05-10 10:43:36 -04:00
4a516d8edb Updated builtin functions for scope. 2025-05-07 08:16:05 -04:00
5b0950cabb Finished linked env scope on user functions.
Doesn't work for builtin functions yet, so doesn't compile. TODO.
2025-04-26 11:04:21 -04:00
ff68b756ef Updated for Scope. 2025-04-26 09:45:34 -04:00
3e80f6430d Updated output formatting for scope. 2025-04-23 13:06:54 -04:00
a04d318e45 Started implementing the linked env scope. 2025-04-14 08:58:41 -04:00
6e05f1334a Updated grammar rules for new scope system.
Need to implement scope fields still though.
2025-04-12 14:29:39 -04:00
4e66f7875a Added grammars for function definitions. 2025-04-12 09:47:34 -04:00
845a7f87b2 Updated exception execution.
Now represents a sort of traceback.
2025-03-30 17:05:29 -04:00
8cab531129 Fixed memory error in exception printing.
Conflation between char* & char**.
2025-02-25 07:47:08 -05:00
eb3fbca030 Some things are broken.
EVERYTHING IS BROKEN
AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA.
2025-02-15 11:03:51 -05:00
40b91b96bd Adds type infrastructure.
Only floats (nums) are available at the moment.
2025-02-08 11:01:56 -05:00
fbabf71d64 Variable references in blocks now work.
:D :D :D
2025-02-04 17:00:28 -05:00
78e31c3e27 Fixed block parsing for real this time.
I am such an idiot, ast_block_data_init() just ignored the given array
lol.
2025-02-04 16:50:04 -05:00
5d81054cf6 Added variable definitions. 2025-02-03 11:28:47 -05:00
70393ef9ae Started work on blocks and the hash table. 2025-02-01 11:01:01 -05:00
8b01407374 Added initial support for variables.
They are now parsed correctly, though they cannot be defined manually
and all have a value of 42.42.
2025-01-20 14:47:58 -05:00
4be71317b0 Fixed memory leaks. 2025-01-18 10:41:54 -05:00
1e11b5921d It all works! (except for mem leaks) 2025-01-18 09:42:28 -05:00
9e8410d4cf Parens. 2025-01-16 11:59:34 -05:00
8763fa35dd Updated README.md 2024-12-14 20:35:36 -05:00
ec268f6047 Nothing works. 2024-12-07 11:01:00 -05:00
7b19e553f2 With token.c. 2024-12-07 10:33:16 -05:00
8e5b39a6e4 Can now do integer addition (with floats! :D). 2024-11-30 10:44:21 -05:00
4514d94be9 Basic addition with integers is now available. 2024-11-30 10:24:31 -05:00
363188d7d6 The. 2024-11-16 10:00:40 -05:00
139d6fcb22 Things. 2024-11-09 11:09:57 -05:00
950c25bace Fixed print formatting. 2024-10-31 12:52:39 -04:00
5b345e6bf5 Added stack. 2024-10-26 10:56:11 -04:00
891d8bf7ef Finished initial AST structures.
Call and ints (nums).
2024-10-26 10:07:33 -04:00