> 3) Imports, or macros that expand into them, are allowed in a module
> only at the beginning, before any expressions or definitions.  They may
> be used at any time in the REPL, but they must not be embedded in any
> other form (except begin).

You don't find it horribly kludgy for Scheme to behave differently in
different contexts?

In my opinion the single biggest wart in Scheme is that DEFINE isn't
allowed anywhere.  The metacircular evaluator can handle it anywhere,
so there's nothing wrong with the semantics; the restriction is just
an efficiency hack.  I don't expect to convince anyone to change that,
certainly not in this standardization effort, but I don't want any more
such warts added.  I would sooner junk modules /and/ macros, if it came
to that, than have to remember special-case rules of this ilk.

The rules and the meaning that some construct has at the REPL should be
the only rules and the only meaning that that construct has in Scheme,
period.  If the WG2 fans can't live with this principle, then that's
reason enough to abandon the idea of compatibility between WG1 and WG2.

Imho of course.

_______________________________________________
r6rs-discuss mailing list
[email protected]
http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss

Reply via email to