summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2026-01-22fix force_thunk, add tests sponsored by claude.aiFelix Perktold
2026-01-22lambdas now eval whole body and return the last element of the body instead ↵Felix Perktold
of just evaluating and returnin the first element
2026-01-22changed the repl so defined values don't immediately get evaluated from REPL ↵Felix Perktold
(important for endless lists etc)
2026-01-21fix integers-from style infinite listsFelix Perktold
2026-01-21add primitive lazy-eval (STILL BROKEN!)Felix Perktold
2026-01-19add list procedureFelix Perktold
2026-01-19add error typeFelix Perktold
2026-01-18factor out basic standard procedures (+, -, cons, car...) into separate moduleFelix Perktold
2026-01-18start writing psql module, start writing exercise 1 with that module, small ↵Felix Perktold
header file changes as needed for module programming
2026-01-18renamed builtins to proceduresFelix Perktold
2026-01-18add module system to load .so with load_module builtinFelix Perktold
2026-01-18refactor lisp.h into public lisp_api.h and internal lisp.hFelix Perktold
2026-01-13added some lisp functionsFelix Perktold
2026-01-07handle ^CFelix Perktold
2025-12-23support partial function application and over-application chainingFelix Perktold
2025-12-23fix tests, fix empty input behaviorFelix Perktold
2025-12-23rename eq? to equal?, fix syntax error on empty newlineFelix Perktold
2025-12-23fix redefinition of symbols in env, cleanupFelix Perktold
2025-12-23multiline support in REPL, tab completion for environment (no special forms yet)Felix Perktold
2025-12-22improve symbol not found handling (copy pasteable quoting), use head_eval in ↵Felix Perktold
eval return instead of evaluating a twice
2025-12-22fix evaluation of lists (recursively eval all elems of list)Felix Perktold
2025-12-22refactor apply / eval, add reverse builtinFelix Perktold
2025-12-22tweaksFelix Perktold
2025-12-22add tests sponsored by chatgptFelix Perktold
2025-12-22add eq?, make make_nil() function singletonFelix Perktold
2025-12-22add reading from files, add quote shorthand (')Felix Perktold
2025-12-21fix bug in apply, improve printingFelix Perktold
2025-12-21more pretty printingFelix Perktold
2025-12-21improve car, cadr error handlingFelix Perktold
2025-12-21add builtins, add pretty printing for lists, fix erroneous symbol x not ↵Felix Perktold
found for forms (define, lambda ...) add check for head->type == VT_SYMBOL on forms (so a string cannot be misinterpreted as a form symbol), move is_integer from lisp.y to lisp.h/lisp.c
2025-12-21renamed enum values VALTYPE->VT, implemented lambdas, applyFelix Perktold
2025-12-21add testsFelix Perktold
2025-12-21start implementing evalFelix Perktold
2025-12-21add environments for symbol definition/lookupFelix Perktold
2025-12-21remove WHITESPACE token, ignore whitespace in lexerFelix Perktold
2025-12-21add symbols, code cleanupFelix Perktold
2025-12-20add list syntactic sugar, eg: (1 2) instead of (1 . (2 . ()))Felix Perktold
2025-12-20cleanupFelix Perktold
2025-12-20fix string lexingFelix Perktold
2025-12-20add .gitignoreFelix Perktold
2025-12-20init commitFelix Perktold