Mark H Weaver <m...@netris.org> writes:
> `load' is optional in the R5RS, and it has been removed entirely from
> the R6RS, which was designed with compilers in mind.  Guile allows the
> use of `load', but its compiler assumes that undeclared identifiers are
> top-level _variables_, not syntax.  This seems a reasonable compromise.

While I more than agree with the compromise, perhaps a note could be
added to the documentation given 'load' has a different behaviour at the
REPL and in modules. In a module, we expect the above; at the REPL, we
want the syntax-definitions available. Perhaps something like

"Since 'load' happens at run-time, syntax definitions will have no
effect on existing procedures, although they will be available at the
REPL."

-- 
Ian Price

"Programming is like pinball. The reward for doing it well is
the opportunity to do it again" - from "The Wizardy Compiled"


Reply via email to