
I'd just point out that I'm not aware of an operating system that GHC runs on that doesn't accept '/' as a path separator. It may be that you could fine an OS where you could compile with jhc or run with hugs that doesn't use '/' (e.g. MacOS 9), but support for MacOS 9 at this stage I wouldn't consider a high priority. Since noone ought to need the path separator, and since they can currently assume '/' without loss of portability, it seems like adding in an extra function to protect us from the introduction of an operating system some time in the future that doesn't allow '/' as a path separator is a bit much.
Of course, I may be wrong. Does windows disallow mixing of '/' and '\\' as path separators?
That's fine, at the file system level. However some programs that are layered on top of that, for example the copy command in the shell, will bork on /. Also on Windows fundamentally \ is the separator, and / is a "second class" separator. When showing paths to the user, it should always be \ because thats the one thats right (TM) for the platform. Thanks Neil