
2011/1/18 Stewart, Robert <Robert.Stewart@sig.com>:
But for libraries with one 'main concept' file must exists such file. For example, in my Configurator:
#include <boost/configurator/configurator.hpp>
That should not preclude configurator/all.hpp, even if all.hpp merely includes configurator.hpp. You can change boost/configurator/all.hpp should the need ever arise while boost/configurator.hpp won't need to change. That makes selective, local changes easier because they would be isolated to the configurator subdirectory.
This is true, but I don't want to encourage a proliferation of files with the same name (in different directories). That will just make development harder. I can't help but think that those against boost/library_name.hpp are focusing so hard on purity that they're ignoring convenience. It should be _trivial_ for people to get started with a boost library, and #include <boost/library_name/library_name.hpp> makes a bad first impression, IMO. At it has no practical benefit: there are identical chances of colliding instances of boost/library_name.hpp and of colliding instances of boost/library_name/library_name.hpp, because the information there is redundant. -- Dave Abrahams BoostPro Computing http://www.boostpro.com