blob: 3b899189c5a9e17592bd251a4d4a3bff8a8a6790 (
plain)
1
2
3
4
5
6
7
8
|
[2026-06-26]
- annotations do not work properly because macroexpansion creates an entirely new body for lambdas
- we realized that we are handling macro application in two separate places: pit_expand_macros expands lambda bodies, and pit_eval expands macros encountered while evaling. we ought to unify this so that only one is used (probably pit_expand_macros, because we need to expand macros eagerly to identify free variables to capture)
- we probably can make pit_expand_macros and pit_eval much nicer
- we can probably make pit_expand_macros operate in place
- if we want to be really smart, cool, happy, rich:
let's just make stuff translate to a little VM before it evaluates, and let's store VM programs as functions instead of sexps
|