|
Boost : |
From: Mårten Rånge (marten.range_at_[hidden])
Date: 2007-04-01 15:30:09
This may have been discussed earlier and been proved impractical or
impossible.
I'm a big fan of the boost library; high-quality; great utility; great
range. What's not to like?
Unfortunately while I've been trying to introduce boost at the places I've
been working on I find that the sheer scope of the boost library makes it
discouraging.
Often it's desirable to just demand a certain compiler and build enviroment
(gcc or Visual Studio) then the developers run check out from subversion
(for instance) and run the build script and they are on the way.
boost isn't as easy as it could be IMO (due to its size and scope) to
include into an existing project with many developers (many who might be
unwilling to receive something that complicate the build enviroment).
So let's take the project I'm working on now as an example. What I would
like to do is just to download and use the smart pointers in boost to
introduce the other developers to the possibility of reusing high-quality
smart pointers instead of writing your own or worse not use smart pointers
at all.
In my world I would then like to download the smart pointer boost package
(with dependencies?) which should be a fairly small download. Due to a more
manageable size I would then foresee that it would easier for me to get it
into the source control system and into the build environment. Also, it
would be easier for me to convince the systems architect that boost is worth
more than the hassle it introduces (right now I can't).
Later when people see the benefit of boost and we want to do some text
parsing I'd like to download the boost.spirit package and set it up.
And so on.
I would also think that packaging boost in different packages (a small base
package and then perhaps each individual library as a package) would give
benefits to the development of the new releases. Right now I have the
feeling that getting a new release is rather daunting task. Which I guess
comes from boost being a monolithic, large library that supports many
different compilers and platforms.
By packaging boost into several different packages one could perhaps have
different release schedules for different packages?
Different supported compilers on different packages ( ie VC6 I guess is a
pain to get working with mpl but shared_ptr<> should
work rather straightforward with that aging but still widely used compiler)?
What do you think? I realize that this would be a rather daunting task in
itself (impossible?) since I guess that the dependencies between the
different libraries in boost might not be 100% documented and well
understood. I do however think that there would be benefits in terms of
spreading the popularity of boost and managing boost releases if it could be
done.
Regards,
Mårten Rånge
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk