
[I sent this a couple of days ago but it appears to have got lost in the ether...] On Thu, 26 Feb 2004 18:06:05 -0500, David Abrahams wrote:
Exploring the filesystem is, IMO, conceptually different from doing I/O.
The keyword there is "doing". I agree with your statement, I just don't necessarily agree with the implication that naming the namespace "io" means everything in the namespace is "doing" I/O. I would read it as "related to I/O". Filesystems are related to I/O, otherwise they serve no point. boost::filesystem is about exploring _and_ modifying the underlying filesystem; quite where you draw the line between an action being "filesystem" related and I/O related is seems to be a bit fuzzy - creating a file modifies the filesystem (hence filesystem::fstream) and this involves I/O. So does the directory creation stuff. I suspect that a move to "io" as a namespace would also require the class names to change if things are to read correctly: boost::filesystem::path p; is nice, but boost::io::path p; loses something. Or maybe drop boost::io as an idea... Obviously, if other people read "io" to mean "doing I/O" then the name is bad, so my justifications aren't much use, and any further ponderings can be elided :-) phil -- change name before "@" to "phil" for email