diff options
| author | 2025-07-02 14:06:49 -0400 | |
|---|---|---|
| committer | 2025-07-02 14:06:49 -0400 | |
| commit | 62836db1e080be567221a1665f223d483aca8eca (patch) | |
| tree | d4903d21f8cc4553d248a48bc29b02a721802933 /test | |
| parent | replace location-comparator with free-identifier-comparator (diff) | |
Store names in lexical locations
The previous implementation used what amounted to dynamic binding. This
is now used for global state (for instance, what the top-level `lambda` is
bound to) only.
When a location is bound (either through a syntax or variable binder), its
lexical location is given a value that describes what the location "is".
For variable bindings it is just the special symbol 'variable, but for
syntax transformers the value in the lexical location is the syntax transformer
(in the examples case, either a syntax-rules expander or a builtin like `lambda`).
TODO: replace all instances of `empty-wrap` with an identifier that is
bound with a lexical location whose value is the empty wrap value.
Diffstat (limited to '')
0 files changed, 0 insertions, 0 deletions
