On Friday, November 8, 2002, at 06:04  PM, Beman Dawes wrote:

So no need to guess, except in the case of a system which supports multiple system specific formats.
It's a kind of funny situation.

Mac OS X does of course have enough POSIX support that the POSIX implementation can be used. But this would leave a bit of a hole because there's a second system-specific path format on OS X; besides the POSIX style, there's a traditional Macintosh style that uses ":" as the separator rather than "/". I guess the filesystem library could just ignore this issue, but one that truly embraced OS X support would have some way of dealing with the multiple system-specific formats. In this case, a parser can not determine the format by inspection. In a POSIX path, "a:b" is a legal file name. But interpreted as a traditional Macintosh style path under OS X, it means what a POSIX path of "/a/b" would mean.

The Carbon environment, for applications that work both on OS 9 and OS X, does not include POSIX support, and I can easily imagine people wanting a port of filesystem library specifically for the Carbon environment that is not OS X specific. That's what "Macintosh support for paths" would probably mean.

There's a third issue of resources forks and non-POSIX file attributes. There's probably not a reasonable way to abstract these in the filesystem library, although it would be nice to have a library that can be used to successfully copy files even on systems where files have additional meta info beyond the file contents. This is a similar issue to the issue of representing privileges in a system-independent way.

So there are really two possible Macintosh projects:

1) Add some Macintosh-specific functions, classes, or perhaps additional member functions to make dealing with both kinds of system-specific paths work nicely, using the POSIX implementation for the bulk of the library. This might be as simple as a few path-format-conversion functions, but providing them in the library could go a long way to making this integrate nicely with the various ways of specifying a file Mac OS X.

2) Do a Carbon port of the library that can work in programs designed to work under both Mac OS 9 and Mac OS X. This would be a reimplementation of the library.

-- Darin

_______________________________________________
Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost


Reply via email to