Commit Graph

12 Commits

Author SHA1 Message Date
81c349c70a Added pretty-printing. 2025-12-28 21:04:45 +03:00
6c2ae01a80 Improved the debug print function to pretty-print lists. 2025-12-28 21:04:45 +03:00
e2f1a55cb7 Revert "Minor changes"
This reverts commit 6243ace80b.
2025-12-28 21:04:45 +03:00
5b9de4d5a3 Minor changes 2025-12-28 21:04:45 +03:00
64e52cd0cf Added more math operations, generalized and simplified existing math operations, added some list operations for the lisp lists 2025-12-28 21:04:45 +03:00
892f47ba5f Reorganized environment-related 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
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