Hugs, Mac OS X 10.1.5, and pathnames

Hamilton Richards <[email protected]>
Newsgroups gmane.comp.lang.haskell.hugs.bugs
Message-ID <p05111b02b996dd01b465@[128.83.141.171]>
In OS X, pathnames have two distinct syntaxes. The GUI uses the pre-X 
syntax, in which a pathname begins with a volume name and the 
separator is `:', as in

	Macintosh HD:Users:ham:Documents:whatever.hs

In the Darwin (i.e., unix) command-line "underworld", a pathname 
begins with /Volumes, spaces are escaped with `\', and the separator 
is `/', as in

	/Volumes/Macintosh\ HD/Users/ham/Documents/whatever.hs

When you drag a file icon onto the command line, Terminal does the 
right thing-- it converts the pathname from the GUI syntax to the 
Darwin syntax, and utilities such as more work just as they should.

Hugs, however, doesn't do so well. For example,

    Prelude> :l /Volumes/Macintosh\ HD/Users/ham/Documents/whatever.hs
    Reading file "/Volumes/Macintosh\":
    ERROR "/Volumes/Macintosh\" - Unable to open file "/Volumes/Macintosh\"

Quoting the pathname changes the problem, but doesn't cure it:

    Prelude> :l "/Volumes/Macintosh\ HD/Users/ham/Documents/whatever.hs"
    ERROR - Missing `\' terminating string literal gap

Apparently what's confusing Hugs is the `\', because removing it 
cures the problem:

    Prelude> :l "/Volumes/Macintosh HD/Users/ham/Documents/whatever.hs"
    Reading file "/Volumes/Macintosh HD/Users/ham/Documents/whatever.hs":

Is this problem unavoidable, or is it just an oversight?

Thanks,

--Ham
-- 
------------------------------------------------------------------
Hamilton Richards                Department of Computer Sciences
Senior Lecturer                  Mail Code C0500
512-471-9525                     The University of Texas at Austin
Taylor Hall 5.138                Austin, Texas 78712-1188
[email protected]                [email protected]
------------------------------------------------------------------
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.