Boost logo

Boost :

Subject: Re: [boost] boost::filesystem::path frustration
From: Dave Abrahams (dave_at_[hidden])
Date: 2013-01-27 10:45:20


on Sun Jan 27 2013, Rob Stewart <robertstewart-AT-comcast.net> wrote:

> On Jan 25, 2013, at 6:52 PM, Dave Abrahams <dave_at_[hidden]> wrote:
>
>> IMO paths are abstract entities that aren't necessarily realized in
>> the local filesystem. The results of pure path manipulations must
>> therefore not depend on the state of the local filesystem.
>> Operations accepting paths as input that depend on the local
>> filesystem structure should be seen as operations on the filesystem
>> rather than operations on paths.
>
> +1
>
> I also like the idea that a path is a container of elements.

In fact there probably ought to be an object representing the local
filesystem, so you could also (in principle) do operations on a remote
filesystem. That would very clearly distinguish path operations from
filesystem ones: since you don't need a filesystem to manipulate paths,
the signatures would differ.

-- 
Dave Abrahams
BoostPro Computing                  Software Development        Training
http://www.boostpro.com             Clang/LLVM/EDG Compilers  C++  Boost

Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk