On Tue, Aug 05, 2003 at 11:46:07PM +0900, Dave Thomas wrote:
> >I always thought this isn't done, so the programmer isn't deluded a
> >false sense of security: There isn't always _the_ cannonical
> >path. Think of filesystems that ignore the case in filenames. (Not to
> >mention (symbolic and hard) links or alias names (single~1.rb)

> 1. Would it be worse than it is now?

Depends on whether you think false security is better than no
security. :)

> 2. Why couldn't Ruby make the name cannonical. On a Unix-based
> box, for example, it could store the i-node number.

Technically, it would have to be the pair (device, i-node number),
but it's a good thought.  If the file to be loaded has the same
(d,i) as a file already loaded, don't load it again.  It would
require more OS-specific code in the loader, though.

> Surely every operating system 
> has _some_ way to get to a single target identifier for a given file?

I would be wary of making such an assumption.  It seems logical,
but OSes are often illogical creatures, at least on the surface. :)

-Mark