
28 Jun
2015
28 Jun
'15
10:36 a.m.
Brandon Allbery
On Sat, Jun 27, 2015 at 4:50 PM, Yitzchak Gale
wrote: On Mac OS X, it's normalized Unicode. The important
point is *normalized* - if you create a FilePath from two different Unicode strings that have the same normalized form, the result FilePaths must be equal on Mac OS X.
This is only true for higher level OS X APIs. ghc normally operates in the BSD layer, which mostly follows POSIX semantics; in particular, filesystem paths are bytestrings in the BSD layer, and only normalized in Cocoa APIs.
Normalization here is a property of the filesystem, not the API. So it will be normalized in the POSIX layer too.