
Zachary Turner wrote:
In any new edition of the boost book, I would like to see a strong emphasis on algorithms, containers, and utility functions. Stuff that *everyone* can make use of in a wide variety of projects. variant, boost, thread, filesystem, multi_array, any, accumulators, bind, function, circular_buffer, date_time, exception, foreach, random, enable_if, and probably a few others.
This could in theory take up about half the book. For the next 25% I would like to see some discussion of libraries that are slightly less widely applicable, but still extremely useful and greatly simplifying when you need them. asio, flyweight, iostreams, signals, numeric conversion, etc. Note that use of asio implies neither asynchronous, nor i/o, despite the name. The documentation and examples of asio also applies almost exclusively to i/o related tasks on the network. It would be useful to extend this to other things, for example asynchronous file reading / writing, or asynchronous computation, or a generic pipeline.
The last 25% I think could be dedicated to more specialized / advanced libraries. graph, math, MPL, fusion, spirit, etc.
I agree with the above, except for the relative amounts of pages. I would rather think of a three volume collection. The reason is that the complex/specialized/advanced topics are, well, complex, specialized, advanced. And because they are, they always seem to be squeezed in last, not covered in enough detail. For instance, currently I think I could make good use of MPL, but the tutorial looks rather abstract to me, and somehow I do not really get a grasp on it. I would love to see a more down-to-earth introduction (although maybe that is an oxymoron?). Regards, Roland