
David Abrahams wrote:
"Matt Doyle" <mdoyle@a-m-c.com> writes:
A potential new user needs a way to find out what exactly is in boost. Right now if I want to solve a particular problem and I don't know which library to use, I basically have to drill down through the list and read the overview for each one.
What would you propose as a better system?
The issue is this: the current documents say "Library X does Y", or, in functional notation, y = foo(x). If you know x, you can find y. Unfortunately, the new user knows y, and so needs x = bar(y), where bar() is the inverse of foo(). (What's more, the user doesn't even know that they need x = bar(y) because they don't know that Boost deals with y by providing bar(y) until they start hunting through the docs.) A better system would be (in addition to what is already there, rather than as a replacement for it) to provide this inverse function in the docs, so, in addition to the alphabetical list at http://boost.org/libs/libraries.htm (which is foo()) there is a list corresponding to bar(), but with a little more detail. I am thinking of something along the lines of: Standard C++: *Memory allocation on the heap*, which requires careful management by the user Boost: *Smart pointers*, which do not require this kind of management (with the emboldened text or something similar to catch the user's eye) Now, I know what you're thinking - come on then, walk the walk, contribute a list and we'll put it in the documentation. I would do this but I am only familiar with a handful of the libraries. If this idea is taken on, it needs to be implemented by a person who is, or group of persons who between them are, familiar with all of the libraries. Paul