|
|
81c349c70a
|
Added pretty-printing.
|
2025-12-28 21:04:45 +03:00 |
|
|
|
e46938005b
|
Making preparations for more of the standard library
|
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 |
|
|
|
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 |
|