[racket-dev] proposal: `data' collection

From: Robby Findler (robby at eecs.northwestern.edu)
Date: Sat Jul 10 10:49:31 EDT 2010

On Sat, Jul 10, 2010 at 9:47 AM, Matthew Flatt <mflatt at cs.utah.edu> wrote:
> At Sat, 10 Jul 2010 09:35:28 -0500, Robby Findler wrote:
>> Just to be sure I understand, you're saying that these two may or may
>> not refer to the same file:
>>
>> >>   (require foo/blah)
>> >>   (require "blah.rkt")
>>
>> right?
>
> Right --- depending on whether the enclosing file is required through a
> `lib' path or through a `file' path, and when "blah.rkt" is shadowed in
> an alternative collects directory.
>
> That much is true already if you shadow the "foo" collection through a
> different "collects". Currently, I think the "blah.rkt" form will
> always refers to a file in the same directory as the enclosing module,
> but I'm not certain.

That seems like it matches the principle of least surprise: quote
marks mean relative directories and things like (require foo/blah)
mean "go find it in the collection tree". So the difference is
syntactically apparent.

Robby


Posted on the dev mailing list.