> On Jun 18, 2017, at 8:09 AM, Matthew Flatt <[email protected]> wrote:
> 
> At Sun, 18 Jun 2017 06:47:24 -0400, Tony Garnock-Jones wrote:
>> First, it seems like since the whole point of require is to pollute the
>> surrounding namespace, an "unhygienic" require would be better.
> 
> Generally, I don't see the difference between `require` and `define` in
> terms of the intent to bind identifiers. Many parts of Racket rely on
> `require` binding being hygienic in the same way as definitions.
> 
> But...
> 
>> My past experiences of this kind of problem have all been related to
>> #lang and module and require-level binding, come to think of it. It
>> seems a murky area. Perhaps other kinds of hygiene-preserving techniques
>> than those that work well for expressions are needed for these areas?
> 
> ... I agree that hygiene is not always a convenient default for module
> languages, which frequently want to introduce non-hygienic bindings. I
> don't know how to make this better, but it's something to think about.


Perhaps the default setting needs a switch so it can be flipped for
some contexts. The module language seems to be the first serious 
feature that could benefit from such a thing but I could imagine 
that classes (or extensions of class.rkt) may benefit from it too. 

— Matthias

-- 
You received this message because you are subscribed to the Google Groups 
"Racket Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
For more options, visit https://groups.google.com/d/optout.

Reply via email to