bap
bap copied to clipboard
make channels dynamically scoped in Primus Lisp
Our input/output channel variables look like they are dynamically scoped (aka parameters), e.g., *standard-output* but they are stored directly in the Primus Env and are lexically scoped. This should be rectified. First, they should not be stored in the CPU environment. Second, they should behave as expected from the variables that are dynamic.