Hi,

> The main purpose of canoncialPath is to fix the case on Windows, so
> "c:\my documents\file.doc" becomes "C:\My Documents\file.doc" if that
Right, as Krasimir pointed out we already have
System.Directory.canonicalizePath.  Incedentally, this version removes "/../" in
a symlink-friendly way on Unix, because it uses realpath() underneath.

This is only #idef'd in on GHC, Hugs users have only a dummy return.

Also on Windows it deals with ../, but does not correct the case
differences or replace SHORTN~1 with the proper names.

The correct thing to do of course is to fix up this function, so I'll
give that a go.

It also looks like fullPath is just canonicalizePath, so I'll throw
that out once canonicalize is available properly.


I'd rather not have duplication because that can lead to confusion too - but at
least it should be clearly documented.  Certainly we should not have all of

   joinFileName, combine, addFileName

Well joinFileName and addFileName are mainly used for keeping the
properties consistent, so combine is the real function to use, I'll
drop the other two from the interface.

since they all do the same thing.  Also,

   getDirectory, dropFileName

do the same thing.

I think a rejig of the names is in order, in light of this and your
directoryOf suggestions. I'll find someone who is better at naming and
drag them to a whiteboard.

Thanks

Neil
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe

Reply via email to