I've finished fixing the issues with parameters; all public parameters are
now called param:foo and each corresponds to the appropriate *foo*.

Most of these parameters are write-only from the user side, so I've bound
the *foo* variables to #!default and changed the code to pay attention only
when they are modified.

The remaining ones are trickier; e.g. *default-pathname-defaults* which is
documented to be bound to a suitable pathname. These I handled on a
case-by-case basis.

The end result is that most old programs that use fluid-let should continue
to work.

You might have noticed that I completely flushed the "fluid" objects, using
parameters instead. Parameters are now standardized, not just in SRFI but
also in R7RS, so it seemed like the right thing to do. I also expanded the
ways that parameters can be built, giving additional control over getting
and setting them; in some cases this allows the parameter to be used
without a wrapper procedure.

Note that I haven't yet updated the documentation to reflect these changes.
I'll get around to that soon.

Please let me know if I broke anything.
_______________________________________________
MIT-Scheme-devel mailing list
MIT-Scheme-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/mit-scheme-devel

Reply via email to