
Hi, I was wondering if we can add other categories to the library catalog (http://www.boost.org/users/history/version_1_47_0.html). Here is a proposal Best, Vicente Domain Specific crc - Cyclic Redundancy Code, from Daryle Walker. units - Zero-overhead dimensional analysis and unit/quantity manipulation and conversion, from Matthias Schabel and Steven Watanabe. uuid - A universally unique identifier, from Andy Tompkins. Idioms base-from-member - Idiom to initialize a base class with a member, from Daryle Walker. compressed_pair - Empty member optimization, from John Maddock, Howard Hinnant, et al. Language Emulation: these are libraries are emulating a missing language feature exception - A library for transporting of arbitrary data in exception objects, and transporting of exceptions between threads (N2179), from Emil Dotchevski. move - Portable move semantics for C++03 and C++1 compilers, from Ion Gaztañaga scope_exit - Execute arbitrary code at scope exit, from Alexander Nasonov. typeof - Typeof operator emulation, from Arkadiy Vertleyb and Peder Holt. Patterns: libraries that implement a known pattern flyweight - Design pattern to manage large quantities of highly redundant objects, from Joaquín M López Muñoz. signals - managed signals & slots callback implementation, from Doug Gregor. signals2 - managed signals & slots callback implementation (thread-safe version 2), from Frank Mori Hess. State Machines meta state machine - High-performance expressive UML 2.0 finite state machines, from Christophe Henry. statechart - Arbitrarily complex finite state machines can be implemented in easily readable and maintainable C++ code, from Andreas Huber. System: libraries that are close to the underlying system chrono - Useful time utilities, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá. date_time - Date-Time library from Jeff Garland. filesystem - Portable paths, iteration over directories, and other useful filesystem operations, from Beman Dawes. system - Operating system support, including the diagnostics support that will be part of the C++0x standard library, from Beman Dawes. I would add also the following to exixting categories Data structures optional - Discriminated-union wrapper for optional values, from Fernando Cacciola. tribool - 3-state boolean type library, from Doug Gregor. I have no suggestion for the following, so we can maintain them in Miscellaneous conversion - Polymorphic and lexical casts, from Dave Abrahams and Kevlin Henney. swap - Enhanced generic swap function, from Joseph Gauterin. timer - Event timer, progress timer, and progress display classes, from Beman Dawes. TR1 - An implementation of the Technical Report on C++ Library Extensions, using other Boost libraries as a basis, from John Maddock. utility - Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom, from Dave Abrahams and others. value_initialized - Wrapper for uniform-syntax value initialization, from Fernando Cacciola, based on the original idea of David Abrahams. The following libraries are already in another category lexical_cast - General literal text conversions, such as an int represented as a string, or vice-versa, from Kevlin Henney. numeric/conversion - Optimized Policy-based Numeric Conversions, from Fernando Cacciola. program_options - Access to configuration data given on command line, in config files and other sources, from Vladimir Prus.

On Thursday, 3 November 2011, Vicente J. Botet Escriba wrote:
Hi,
I was wondering if we can add other categories to the library catalog ( http://www.boost.org/users/**history/version_1_47_0.html<http://www.boost.org/users/history/version_1_47_0.html> ).
Sorry that I didn't reply to this sooner. I think the best thing to do is to make the changes to 'libs/libraries.htm' in trunk, and then ask for feedback. If there are no objections, then merge to release and I'll update the website (or you're welcome to if you fancy dealing with the xml).

Le 22/11/11 01:26, Daniel James a écrit :
On Thursday, 3 November 2011, Vicente J. Botet Escriba wrote:
Hi,
I was wondering if we can add other categories to the library catalog ( http://www.boost.org/users/**history/version_1_47_0.html<http://www.boost.org/users/history/version_1_47_0.html> ).
Sorry that I didn't reply to this sooner. I think the best thing to do is to make the changes to 'libs/libraries.htm' in trunk, and then ask for feedback. If there are no objections, then merge to release and I'll update the website (or you're welcome to if you fancy dealing with the xml).
Hi, I have committed the proposed changes as suggested in https://svn.boost.org/svn/boost/trunk/libs/libraries.htm Please, let me know if there is something wrong with the new categories. Best, Vicente

On 22 November 2011 22:18, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
I have committed the proposed changes as suggested in https://svn.boost.org/svn/boost/trunk/libs/libraries.htm
Please, let me know if there is something wrong with the new categories.
I've had a quick look and it's good. The following is all IMO so do disregard if you disagree. I find some of the new categories to be quite specific, but then so are some of the old ones. I don't like 'Idioms' and 'patterns' much, maybe they could be combined, or does that contradict your intent? Miscellaneous should probably stay at the end, and not contain libraries that now have another home.

On Tue, Nov 22, 2011 at 11:56 PM, Daniel James <dnljms@gmail.com> wrote:
On 22 November 2011 22:18, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
I have committed the proposed changes as suggested in https://svn.boost.org/svn/boost/trunk/libs/libraries.htm
Please, let me know if there is something wrong with the new categories.
I've had a quick look and it's good. The following is all IMO so do disregard if you disagree. I find some of the new categories to be quite specific, but then so are some of the old ones. I don't like 'Idioms' and 'patterns' much, maybe they could be combined, or does that contradict your intent? Miscellaneous should probably stay at the end, and not contain libraries that now have another home.
The compact (one line per lib) format is nice. Can't the same format be used for http://www.boost.org/doc/libs/? -- Olaf

On 22 November 2011 23:01, Olaf van der Spek <ml@vdspek.org> wrote:
The compact (one line per lib) format is nice. Can't the same format be used for http://www.boost.org/doc/libs/?
I implemented something like that at: http://www.boost.org/doc/libs/?view=categorized Never made a decision one way or the other.

On Wed, Nov 23, 2011 at 12:06 AM, Daniel James <dnljms@gmail.com> wrote:
On 22 November 2011 23:01, Olaf van der Spek <ml@vdspek.org> wrote:
The compact (one line per lib) format is nice. Can't the same format be used for http://www.boost.org/doc/libs/?
I implemented something like that at:
http://www.boost.org/doc/libs/?view=categorized
Never made a decision one way or the other.
Would be nice to have the same format for the main view.

Le 22/11/11 23:56, Daniel James a écrit :
On 22 November 2011 22:18, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
I have committed the proposed changes as suggested in https://svn.boost.org/svn/boost/trunk/libs/libraries.htm
Please, let me know if there is something wrong with the new categories. I've had a quick look and it's good. The following is all IMO so do disregard if you disagree. I find some of the new categories to be quite specific, but then so are some of the old ones.
Have you a concrete proposal of categories that can be merged or removed?
I don't like 'Idioms' and 'patterns' much, maybe they could be combined, or does that contradict your intent? No, Idioms and Patterns is Ok. I'll merge them. Miscellaneous should probably stay at the end, and not contain libraries that now have another home. OK. I will put all the categories ordered lexicographically and move Miscellaneous to the end.
Best, Vicente

On 23 November 2011 18:08, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
Have you a concrete proposal of categories that can be merged or removed?
Not really, I'm very happy to leave this to you ;). Apart from Idioms and Patterns, I was thinking about 'State Machines' but I don't have a better place for them so maybe they should stay. From the old categories 'parsing' is already covered by "Strings and text processing" so I'd remove that. I'd merge the two metaprogramming categories as well.

Le 24/11/11 20:03, Daniel James a écrit :
On 23 November 2011 18:08, Vicente J. Botet Escriba<vicente.botet@wanadoo.fr> wrote:
Have you a concrete proposal of categories that can be merged or removed? Not really, I'm very happy to leave this to you ;). Apart from Idioms and Patterns, I was thinking about 'State Machines' but I don't have a better place for them so maybe they should stay. From the old categories 'parsing' is already covered by "Strings and text processing" so I'd remove that. I'd merge the two metaprogramming categories as well.
I agree with you. I will merge them if no one is against. Vicente

On 23 November 2011 18:08, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
Have you a concrete proposal of categories that can be merged or removed?
Not really, I'm very happy to leave this to you ;). Apart from Idioms and Patterns, I was thinking about 'State Machines' but I don't have a better place for them so maybe they should stay. From the old categories 'parsing' is already covered by "Strings and text processing" so I'd remove that. I'd merge the two metaprogramming categories as well.
Why to classify by subject when the subject is too narrow (like state machines or parsing)? For example, (proto-based) DSEL could be nice. I would see: - proto (of course!) - msm - spirit - phoenix - xpressive - whatever I have forgotten Just a suggestion. Christophe

Le 24/11/11 22:52, Christophe Henry a écrit :
On 23 November 2011 18:08, Vicente J. Botet Escriba <vicente.botet@wanadoo.fr> wrote:
Have you a concrete proposal of categories that can be merged or removed?
Not really, I'm very happy to leave this to you ;). Apart from Idioms and Patterns, I was thinking about 'State Machines' but I don't have a better place for them so maybe they should stay. From the old categories 'parsing' is already covered by "Strings and text processing" so I'd remove that. I'd merge the two metaprogramming categories as well.
Why to classify by subject when the subject is too narrow (like state machines or parsing)?
If you want I can merge State Machines on Domain Specific if you think the subject is too narrow. I have already merged Parsing with Strings and text processing. Any alternative suggestion?
For example, (proto-based) DSEL could be nice. I would see: - proto (of course!) - msm - spirit - phoenix - xpressive - whatever I have forgotten
Just a suggestion.
Umm! Do you mean by this all the libraries that use Expression Templates? Would a library that defines its own DSEL with the preprocessor be considered a DSEL? Best, Vicente

Why to classify by subject when the subject is too narrow (like state machines or parsing)?
If you want I can merge State Machines on Domain Specific if you think the subject is too narrow. I have already merged Parsing with Strings and text processing. Any alternative suggestion?
Domain Specific seems a bit vague, at least State Machine says what it is.
For example, (proto-based) DSEL could be nice. I would see: - proto (of course!) - msm - spirit - phoenix - xpressive - whatever I have forgotten
Just a suggestion.
Umm! Do you mean by this all the libraries that use Expression Templates? Would a library that defines its own DSEL with the preprocessor be considered a DSEL?
Best, Vicente
Yes for the first question, I'd say yes too for the second (though I confess a minute of doubt). These libraries provide a solution to a domain-specific problem but do it a "different" way or at least it seems so to the user, who can then decide if he likes this programming style or not and see if he wants to have a look at those libraries designed on the same principle. Cheers, Christophe

On 22.11.2011 23:18, Vicente J. Botet Escriba wrote:
Hi,
I have committed the proposed changes as suggested in https://svn.boost.org/svn/boost/trunk/libs/libraries.htm
Please, let me know if there is something wrong with the new categories. What's the difference between "Containers" and "Data Structures"?
On a minor note, I think "Miscellaneous" should only contain libraries that have no other home. Sebastian

Le 23/11/11 14:50, Sebastian Redl a écrit :
On 22.11.2011 23:18, Vicente J. Botet Escriba wrote:
Hi,
I have committed the proposed changes as suggested in https://svn.boost.org/svn/boost/trunk/libs/libraries.htm
Please, let me know if there is something wrong with the new categories. What's the difference between "Containers" and "Data Structures"?
These categories were already there. Maybe data structures is too large. When I extract the ones that are already in Container the list is reduced to: any - Safe, generic container for single values of different value types, from Kevlin Henney. compressed_pair - Empty member optimization, from John Maddock, Howard Hinnant, et al. fusion - Library for working with tuples, including various containers, algorithms, etc. From Joel de Guzman and Dan Marsden and Tobias Schwinger. optional - Discriminated-union wrapper for optional values, from Fernando Cacciola. tribool - 3-state boolean type library, from Doug Gregor. tuple - Ease definition of functions returning multiple values, and more, from Jaakko Järvi. uuid - A universally unique identifier, from Andy Tompkins. I will move UUID to Domain Specific. Fusion and tuple can be moved to containers.
On a minor note, I think "Miscellaneous" should only contain libraries that have no other home.
Yes, I forget to do it. I will do it. Best, Vicente

Vicente J. Botet Escriba wrote:
I was wondering if we can add other categories to the library catalog (http://www.boost.org/users/history/version_1_47_0.html).
Here is a proposal
Domain Specific
crc units uuid
There have been complaints about "domain specific" being too vague, but code that is, by its nature, not as general as you'd expect to see in the Standard Library, fits. Having said that, Units seems to be more miscellaneous than domain specific. However, if "Math and Numerics" were just Math, then Units would fit there.
Idioms Patterns: libraries that implement a known pattern
I like the Patterns and Idioms grouping.
Language Emulation: these are libraries are emulating a missing language feature
Good.
State Machines
meta state machine statechart
That seems too small a group. Isn't a state machine a pattern?
System: libraries that are close to the underlying system
Good
I would add also the following to exixting categories Data structures
optional - Discriminated-union wrapper for optional values, from Fernando Cacciola. tribool - 3-state boolean type library, from Doug Gregor.
Perhaps "Simple Data Structures" would be a better name to disambiguate between data structures and containers. Should Graph be in Containers? There aren't any containers in that library, are there? I was going to state that a category with just one entry is unjustified, and one with but two entries is questionable. However, there's some value in having more categories, even with just one entry, since a searcher may not pick the same category as we do for a given library's functionality. Thus, while "Parsing" has just one entry, it is an important category and Spirit would be missed by someone looking for a parsing library. _____ Rob Stewart robert.stewart@sig.com Software Engineer using std::disclaimer; Dev Tools & Components Susquehanna International Group, LLP http://www.sig.com ________________________________ IMPORTANT: The information contained in this email and/or its attachments is confidential. If you are not the intended recipient, please notify the sender immediately by reply and immediately delete this message and all its attachments. Any review, use, reproduction, disclosure or dissemination of this message or any attachment by an unintended recipient is strictly prohibited. Neither this message nor any attachment is intended as or should be construed as an offer, solicitation or recommendation to buy or sell any security or other financial instrument. Neither the sender, his or her employer nor any of their respective affiliates makes any warranties as to the completeness or accuracy of any of the information contained herein or that this message or any of its attachments is free of viruses.

Le 29/11/11 19:37, Stewart, Robert a écrit :
Vicente J. Botet Escriba wrote:
I was wondering if we can add other categories to the library catalog (http://www.boost.org/users/history/version_1_47_0.html).
Here is a proposal
Domain Specific
crc units uuid There have been complaints about "domain specific" being too vague, but code that is, by its nature, not as general as you'd expect to see in the Standard Library, fits. Having said that, Units seems to be more miscellaneous than domain specific. However, if "Math and Numerics" were just Math, then Units would fit there. I agree that Units is less specific.
State Machines
meta state machine statechart That seems too small a group. Isn't a state machine a pattern? Yes it is. We could move them.
System: libraries that are close to the underlying system Good
I would add also the following to exixting categories Data structures
optional - Discriminated-union wrapper for optional values, from Fernando Cacciola. tribool - 3-state boolean type library, from Doug Gregor. Perhaps "Simple Data Structures" would be a better name to disambiguate between data structures and containers. Why not. Should Graph be in Containers? There aren't any containers in that library, are there? Yes Graph fall better in Data structures IMO. I was going to state that a category with just one entry is unjustified, and one with but two entries is questionable. However, there's some value in having more categories, even with just one entry, since a searcher may not pick the same category as we do for a given library's functionality. Thus, while "Parsing" has just one entry, it is an important category and Spirit would be missed by someone looking for a parsing library.
Maybe we could just name the "String and Text Processing", "Text Processing". Best, Vcente

Here is a proposal
Domain Specific
crc units uuid There have been complaints about "domain specific" being too vague, but code that is, by its nature, not as general as you'd expect to see in the Standard Library, fits. Having said that, Units seems to be more miscellaneous than domain specific. However, if "Math and Numerics" were just Math, then Units would fit there. I agree that Units is less specific.
I would be happiest to see Units in Math and Numerics; most of the uses I have run across fall into this category... Matthias

Le 30/11/11 01:36, Matthias Schabel a écrit :
Here is a proposal
Domain Specific
crc units uuid There have been complaints about "domain specific" being too vague, but code that is, by its nature, not as general as you'd expect to see in the Standard Library, fits. Having said that, Units seems to be more miscellaneous than domain specific. However, if "Math and Numerics" were just Math, then Units would fit there. I agree that Units is less specific. I would be happiest to see Units in Math and Numerics; most of the uses I have run across fall into this category... OK, I will move it if nobody is against.
Best, Vicente
participants (7)
-
Christophe Henry
-
Daniel James
-
Matthias Schabel
-
Olaf van der Spek
-
Sebastian Redl
-
Stewart, Robert
-
Vicente J. Botet Escriba