Commit Graph

11 Commits

Author SHA1 Message Date
2f9501450f Reorganized the standard library a little more, moved the initialization code for the standard environment into a function. Making way for more organization changes to come 2025-12-28 21:04:45 +03:00
892f47ba5f Reorganized environment-related functions. 2025-12-28 21:04:45 +03:00
c7132325db Added some standard functions 2025-12-28 21:04:45 +03:00
c80d5fd75f reorganized a bit, separated bind-symbol into two operators that have different uses, def and set 2025-12-28 21:04:45 +03:00
Emin Arslan
3e53f3720f Removed irrelevant comment 2025-12-28 21:04:45 +03:00
Emin Arslan
d0accebf73 Changed the addition and subtraction functions to be clearer 2025-12-28 21:04:45 +03:00
Emin Arslan
dec68856f3 Evaluation is now performed properly, mimicking Common Lisp, and basic defun and defmacro definitions are provided (automatically executed on startup) 2025-12-28 21:04:44 +03:00
Emin Arslan
bb0ec74ee7 Added builtin special forms, lambda forms and bind-symbol. got rid of bind-function, as it is now unnecessary. it is now possible to create functions! 2025-12-28 21:04:44 +03:00
Emin Arslan
aaafe1c3e6 Re-organized a lot of code, changed functions so that functions capture the surrounding environment and execute in that environment 2025-12-28 21:04:44 +03:00
Emin Arslan
354e9b355b Added bind-function primitive that allows us to define functions, also changed evaluation to allow for a persistent environment 2025-12-28 21:04:44 +03:00
Emin Arslan
4535d57d21 Initial state - basic lexer + parser + interpreter 2025-12-28 21:04:44 +03:00