[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: #1131: Kill ##sys#alias-global-hook with fire
From: |
Chicken Trac |
Subject: |
Re: #1131: Kill ##sys#alias-global-hook with fire |
Date: |
Sun, 11 Apr 2021 10:48:14 -0000 |
#1131: Kill ##sys#alias-global-hook with fire
--------------------------------+--------------------
Reporter: sjamaan | Owner: (none)
Type: defect | Status: new
Priority: major | Milestone: 5.3
Component: unknown | Version: 4.9.x
Resolution: | Keywords:
Estimated difficulty: insane |
--------------------------------+--------------------
Comment (by sjamaan):
Note to self: It looks like there is some inconsistency between `set!`
which doesn't resolve variables using `lookup` and variable dereference
which does.
Also, the interpreter seems to have a problem regarding duplicate lookup
in `##sys#current-environment`.
Once these are fixed, we can drop the `(assq sym (##sys#current-
environment))` from `##sys#alias-global-hook`.
In other words, there is an inconsistent number of times in which
variables are looked up in `##sys#current-environment` which means
sometimes it will resolve a certain variable **too often**, resulting in
mismatches. One reason is that `se` in the compiler generally already
refers to `##sys#current-environment`, and in the interpreter the current
environment is also resolved.
--
Ticket URL: <https://bugs.call-cc.org/ticket/1131#comment:11>
CHICKEN Scheme <https://www.call-cc.org/>
CHICKEN Scheme is a compiler for the Scheme programming language.
- Re: #1131: Kill ##sys#alias-global-hook with fire,
Chicken Trac <=