[R6RS] Re: modules

Michael Sperber sperber
Mon Aug 30 11:39:22 EDT 2004


>>>>> "Kent" == R Kent Dybvig <dyb at cs.indiana.edu> writes:

>> The examples in this thread are beginning to trouble me more and more:
>> You seem to expect that, with some unhygienic extension of
>> SYNTAX-RULES in place, ...

Kent> There's nothing unhygienic about the examples (unless you think that
Kent> forms like let are unhygienic), and the examples do not assume any
Kent> extension of syntax-rules.

Ah, OK, I misread the code---sorry about that.

This insight, however, gets me to agreeing with Will and Richard for
SYNTAX-RULES: Taking the intersection between all the top-level
bindings visible in the definition of the module where the macro
definition resides, and the names appearing on the RHS of the rules,
should be a pretty good conservative approximation to the implicit
exports.

I see your point regarding multi-gigabyte quoted stuff, but I'm not
sure why anyone would expect the compiler to "terminate in a
reasonable amount of time" where "reasonable" is something less than
the compiler can do even when it has to figure out the implicit
exports.  Do you expect the overhead to be super-linear, or some large
factor there?

Moreover, I'm not sure I buy that the case of SYNTAX-RULES and the
6gigs colliding is common enough to warrant forcing users to figuring
out the implicit exports *always*.  I would probably be more amenable
to this if there was an example where making the implicit exports
explicit would actually add readability value to a program.

Just a thought: ... would *optionally being able* to specify the
implicit imports be more acceptable to the two factions in this issue?
(It probably would to me---I need to sleep on it.)

-- 
Cheers =8-} Mike
Friede, V?lkerverst?ndigung und ?berhaupt blabla


More information about the R6RS mailing list