
Review Wizard Status Report 1) Summary 2) Review Managers Needed 3) Review Schedule 4) Libraries under development //////////////////////////////////////////////////////////////////// 1) Summary //////////////////////////////////////////////////////////////////// Daryle Walker's library "More IO" is currently under review, starting August 21, 2004. Download the library at: http://boost-sandbox.sourceforge.net/more_io_4.zip. Please post a review of this library if you have not already done so. For information about submitting a Formal Review, see http://www.boost.org/more/formal_review_process.htm. The next library to be reviewed is Jonathan Turkanis "IOStreams" library. The "Iostreams" library allows the easy creation of standard C++ streams and stream buffer classes for new data sources and sinks. Download the library at: http://home.comcast.net/~jturkanis/iostreams. Be prepared to review this library in the next few days. If there are no objections, starting with the "More IO" library, I will attach an ID number to each reviewed library. Please reference this ID number in any postings to the group. This will help in organizing the reviews and assist in searching for related postings. I've also added a permanent section to this status report, called "Libraries Under Development". The purpose of this section is to prevent duplication of effort and support collaberation between library authors. Please contact me to add libraries to this section. Note: If you have any suggestions about how I could improve the Review Wizard's status report, please email me at reportbase@yahoo.com. //////////////////////////////////////////////////////////////////// 2) Review Managers Needed //////////////////////////////////////////////////////////////////// If you would like to volunteer to be a review manager, please contact me at reportbase@yahoo.com. The following libraries still require review manager volunteers: 10006 - Named Parms 10007 - Policy Pointer 10008 - Wave 10009 - Finite State Machine (FSM) 10010 - Fixed Strings //////////////////////////////////////////////////////////////////// 3) Review Schedule //////////////////////////////////////////////////////////////////// August 21, 2004 10001 - More IO (Currently Under Review) August 28, 2004 10002 - Iostreams September 7, 2004 10003 - Output Formatters September 15, 2004 10004 - Mini-Review wiki algorithims September 17, 2004 10005 - Smart Containers September 27, 2004 10006 - Named Params October 6, 2004 10007 - Policy Pointer October 16, 2004 10008 - Wave October 26, 2004 10009 - Finite State Machine (FSM) November 4, 2004 10010 - Fixed Strings 10001 - August 21, 2004 More IO (Currently Under Review) Author - Daryle Walker - darylew@hotmail.com Review Manager - Tom Brinkman - reportbase@yahoo.com Download: http://groups.yahoo.com/group/boost/files/more_io_4.zip [or] http://boost-sandbox.sourceforge.net/more_io_4.zip Description: Provides a multitude of I/O-oriented extensions. Some are extra manipulators; variants of "std::endl", a resetting manipulator, and a configurable manipulator. The library includes a set of base class templates for wrapping a new stream-buffer type around a stream class. Changes from the last interim version (called "more_io_3b.zip"): * split the manipulator header into several headers * refined the license statements in some already-affected files Changes from the first formal review (called "more_io.zip"): * refined the interface and implementation of array-streams and stream-buffer wrappers (including a wrapping example) * added the null-stream, value-stream, and pointer-stream headers * added generalizations to the new-line and skip-line manipulators * added the non-oriented 'reset' and 'form' manipulators * split the manipulator header into several headers * changed the license statements 10002 - August 28, 2004 Iostreams Author - Jonathan Turkanis - turkanis@kangaroologic.com Review Manager - Jeff Garland - jeff@crystalclearsoftware.com Web-Page: http://home.comcast.net/~jturkanis/iostreams Download: http://home.comcast.net/~jturkanis/iostreams Description: The Iostreams Library serves two main purposes: To allow the easy creation of standard C++ stream and stream buffer classes for new data sources and sinks. To provide a convenient interface for defining i/o filters and attaching them to standard streams and stream buffers. The library focuses on freeing users from writing boiler plate code and allowing them instead to create highly reusable components. In addition to providing an abstract framework the library provides a number of concrete filters, sources and sinks which serve as example applications of the library but are also useful in their own right. These include components for accessing memory-mapped files (based on work of Craig Henderson), for file access via operating system file descriptors, for code conversion, for text filtering with regular expressions, for line-ending conversion and for compression and decompression in the zlib, gzip and bzip2 formats. 10003 - September 7, 2004 Output Formatters Author - Reece Dunn - msclrhd@hotmail.com Review Manager - John Torjo - john@torjo.com Download: http://cvs.sourceforge.net/viewcvs.py/ boost-sandbox/boost-sandbox/boost/outfmt/ [or] http://cvs.sourceforge.net/viewcvs.py/ boost-sandbox/boost-sandbox/libs/outfmt/ Description: The I/O formatters library provides an easy and customizable way to input/output arrays, STL arrays, STL collections, sub-arrays from/to STL streams. It allows you to configure how each element in such an array will be written to the stream or read from the stream, while providing reasonable defaults. 10004 - September 15, 2004 Mini-Review wiki algorithims Author - Various Review Manager - Tom Brinkman - reportbase@yahoo.com Download: to be determined Description: not available 10005 - September 17, 2004 Smart Containers Author - Thorsten Ottosen - nesotto@cs.auc.dk Review Manager - Pavol Droba - droba@topmail.sk Download: the boost sandbox: ptr_container Description: The Smart Container Library consists of several container classes that are capable of storing heap-allocated objects in an exception-safe manner. The interface of the container classes effectively hides the underlying pointers so one can work on objects directly; this indirection is done to make the classes safer and easier to use. The library can also be customized to allow, for example, that a container does not rake ownership of the stored objects. 10006 - September 27, 2004 Named Params Co-Authors - David Abrahams - dave@boost-consulting.com) & Daniel Wallin (dalwan01@student.umu.se) Review Manager - to be determined Download: Boost sandbox boost/named_params.hpp [and] libs/utility/doc/named_params.html Description: This library is an attempt to address the problems of positional parameters by associating each parameter with a keyword identifier. Using this library, users can identify parameters by name instead of just argument position, and pass them in any order: window* w = new_window("alert2", movable = movability, opacity = 50); 10007 - October 6, 2004 Policy Pointer Author - David Held - dheld@codelogicconsulting.com Review Manager - to be determined Download: available via boost CVS Description: Smart pointers are used to automate memory management by handling the deletion of dynamically allcoated objects (and other resources). They assist in ensuring program correctness, exception safety, and memory integrity. Policy Pointer is a policy-based smart pointer framework designed to accomodate the large number of smart pointer designs. Through the use of policy classes, virtually any smart pointer type can be constructed within this framework. This library is a Boostification of the original Loki::SmartPtr type with significant modifications. 10008 - October 16, 2004 Wave Author - Hartmut Kaiser - hartmutkaiser@t-online.de Review Manager - to be determined Download Boost-sandbox Description: The Wave C++ preprocessor library is a Standards conformant implementation of the mandated C99/C++ preprocessor functionality packed behind a simple to use interface, which integrates well with the well known idioms of the Standard Template Library (STL). It uses the Spirit[4] parser construction library to implement a C++ lexer with SO/ANSI Standards conformant preprocessing capabilities. It exposes an iterator interface, which returns the current preprocessed token from the input stream. This preprocessed token is generated on the fly while iterating over the preprocessor iterator sequence (in the terminology of the STL these iterators are forward iterators). 10009 - October 26, 2004 Finite State Machine (FSM) Author - Andreas Huber - ah2003@gmx.net Review Manager - to be determined Download: http://boost-sandbox.sf.net/fsm.zip Documentation: http://boost-sandbox.sf.net/libs/fsm Description: The boost::fsm library is a framework that allows you to quickly transform a UML state chart into executable C++ code, without needing to use a code generator. Thanks to support for almost all UML features the transformation is straight-forward and the resulting C++ code is a nearly redundancy-free textual description of the state chart. 10010 - November 4, 2004 Fixed Strings Author - Reece Dunn - msclrhd@hotmail.com Review Manager - to be determined Download: boosts-sandbox/boost/fixed_string [or] boost-sandbox/libs/fixed_string Description: The fixed string library provides buffer overrun protection for static sized strings (char s[ n ]). It provides a C-style string interface for compatibility with C code (for example, porting a C program to C++). There is also a std::string-style interface using a class based on flex_string by Andre Alexandrescu with a few limitations due to the non-resizable nature of the class. //////////////////////////////////////////////////////////////////// 4) Libraries under development //////////////////////////////////////////////////////////////////// 10011 boost::xpressive - Under Development Author: Eric Niebler (eric@boost-consulting.com) Download: Boost sandbox at sourceforge.net Description: Advanced regular expression template library that allows regexes to be written as expression templates (statically bound) or as strings (dynamically bound) and allows regexes to nest and call each other recursively (like perl6) and bind to semantic actions (like Spirit). Development status: Under active development. Basic functionality in place. 10012 boost::geometry2d - Under Development Author(s): Aleksey Gurtovoy Description: simple cartesian geometry classes (point<>, rectangle<>, etc.) Download: yahoogroups files section, geometry2d/ Development status: basic functionality working Tom Brinkman Boost Review Wizard reportbase@yahoo.com

On Sat, 28 Aug 2004 10:00:38 -0700, tom brinkman wrote Tom -- A couple thoughts. 1) The review schedule is too aggressive. One week per review with no breaks is going to kill us and not give enough time for complete reviews. 1.5 weeks with .5 weeks in-between is more doable. This also gives some buffer for review run-overs. The current week is a reasonable exception because we have 2 libraries that overlap the same area. 2) We might need a break to finish the release, so hopefully there is some flexibility in the schedule. 3) I'm guessing boost::geometry2d isn't really under development... 4) These periodic reports are great -- keep up the good work! Jeff

Jeff Garland wrote:
[...] 1) The review schedule is too aggressive. One week per review with no breaks is going to kill us and not give enough time for complete reviews. 1.5 weeks with .5 weeks in-between is more doable. This also gives some buffer for review run-overs. The current week is a reasonable exception because we have 2 libraries that overlap the same area. [...]
I'll second the idea that more time is not a bad thing. ;)
4) These periodic reports are great -- keep up the good work!
And I'll second this sentiment as well. Dave

"Jeff Garland" <jeff@crystalclearsoftware.com> writes:
On Sat, 28 Aug 2004 10:00:38 -0700, tom brinkman wrote
Tom --
A couple thoughts.
1) The review schedule is too aggressive. One week per review with no breaks is going to kill us and not give enough time for complete reviews. 1.5 weeks with .5 weeks in-between is more doable.
Absolutely. Or a little bit longer. 2 weeks was common in the past. If someone's on holiday one week it gives them another week to do a library review.
This also gives some buffer for review run-overs. The current week is a reasonable exception because we have 2 libraries that overlap the same area.
2) We might need a break to finish the release, so hopefully there is some flexibility in the schedule.
3) I'm guessing boost::geometry2d isn't really under development...
4) These periodic reports are great -- keep up the good work!
Hear, hear! -- Dave Abrahams Boost Consulting http://www.boost-consulting.com

Jeff Garland wrote:
On Sat, 28 Aug 2004 10:00:38 -0700, tom brinkman wrote
Tom --
A couple thoughts.
1) The review schedule is too aggressive. One week per review with no breaks is going to kill us and not give enough time for complete reviews. 1.5 weeks with .5 weeks in-between is more doable. This also gives some buffer for review run-overs. The current week is a reasonable exception because we have 2 libraries that overlap the same area.
2) We might need a break to finish the release, so hopefully there is some flexibility in the schedule.
3) I'm guessing boost::geometry2d isn't really under development...
4) These periodic reports are great -- keep up the good work!
Jeff
_______________________________________________ Unsubscribe & other changes: http://lists.boost.org/mailman/listinfo.cgi/boost
Ok. I'll be less aggressive with the scheduling. The time schedule that you suggested is good rule of thumb, thank you. I'll leave it up to the review managers of the individual libraries to change the review dates, as they deem appropriate.

Gennadiy Rozental wrote:
The following libraries still require review manager volunteers: 10006 - Named Parms 10007 - Policy Pointer 10008 - Wave 10009 - Finite State Machine (FSM) 10010 - Fixed Strings
You could count on me. I prefer 10007 since I know a lot about it.
Thanks, Gennadiy! Dave

On Sat, 28 Aug 2004, tom brinkman wrote:
If there are no objections, starting with the "More IO" library, I will attach an ID number to each reviewed library. Please reference this ID number in any postings to the group. This will help in organizing the reviews and assist in searching for related postings.
<snip>
The following libraries still require review manager volunteers: 10006 - Named Parms 10007 - Policy Pointer 10008 - Wave 10009 - Finite State Machine (FSM) 10010 - Fixed Strings
It may not be worth renumbering things at this point, but I would suggest that you prefix library IDs with the current year rather than an arbitrary large number. In otherwords More IO would be 2004-01. This will make it easier to find and refer back to old reviews, since it conveys useful information and may make it easier to find something several years from now. Going forward, you could assign sequence numbers based on the date a review is formally requested. Regards, -Tom Wenisch Computer Architecture Lab Carnegie Mellon University

Thomas Wenisch <twenisch@ece.cmu.edu> writes:
On Sat, 28 Aug 2004, tom brinkman wrote:
If there are no objections, starting with the "More IO" library, I will attach an ID number to each reviewed library. Please reference this ID number in any postings to the group. This will help in organizing the reviews and assist in searching for related postings.
<snip>
The following libraries still require review manager volunteers: 10006 - Named Parms 10007 - Policy Pointer 10008 - Wave 10009 - Finite State Machine (FSM) 10010 - Fixed Strings
It may not be worth renumbering things at this point, but I would suggest that you prefix library IDs with the current year rather than an arbitrary large number. In otherwords More IO would be 2004-01.
What is the point of these IDs? It seems like it adds busywork for reviewers and no especially useful information. Now we're talking about making them more complicated... -- Dave Abrahams Boost Consulting http://www.boost-consulting.com

David Abrahams wrote:
[...] What is the point of these IDs? It seems like it adds busywork for reviewers and no especially useful information. Now we're talking about making them more complicated...
Maybe they have to do with a nagging feeling that Boost Libraries don't all have a canonical name, and even when it seems like they do, people tend to call them whatever they feel like. Perhaps we should either go with a numerical index (which the DBA in me prefers), or insist that all libraries have a canonical name and that everyone use that name to refer to it (perhaps to make it easier to filter messages containing the name). Dave

David Abrahams wrote:
Thomas Wenisch <twenisch@ece.cmu.edu> writes:
On Sat, 28 Aug 2004, tom brinkman wrote:
If there are no objections, starting with the "More IO" library, I will attach an ID number to each reviewed library. Please reference this ID number in any postings to the group. This will help in organizing the reviews and assist in searching for related postings.
<snip>
The following libraries still require review manager volunteers: 10006 - Named Parms 10007 - Policy Pointer 10008 - Wave 10009 - Finite State Machine (FSM) 10010 - Fixed Strings
It may not be worth renumbering things at this point, but I would suggest that you prefix library IDs with the current year rather than an arbitrary large number. In otherwords More IO would be 2004-01.
What is the point of these IDs? It seems like it adds busywork for reviewers and no especially useful information. Now we're talking about making them more complicated...
Three Reasons: 1) As Review Wizard, I feel that assigning a unique identification number to each reviewed library will help me stay organized. 2) Helps in searching for related posts. 3) As library authors are regularly changing the names of their libraries, this will help manage the historical record of the review process.

tom brinkman <reportbase@yahoo.com> writes:
David Abrahams wrote:
Thomas Wenisch <twenisch@ece.cmu.edu> writes:
On Sat, 28 Aug 2004, tom brinkman wrote:
If there are no objections, starting with the "More IO" library, I will attach an ID number to each reviewed library. Please reference this ID number in any postings to the group. This will help in organizing the reviews and assist in searching for related postings.
<snip>
The following libraries still require review manager volunteers: 10006 - Named Parms 10007 - Policy Pointer 10008 - Wave 10009 - Finite State Machine (FSM) 10010 - Fixed Strings
It may not be worth renumbering things at this point, but I would suggest that you prefix library IDs with the current year rather than an arbitrary large number. In otherwords More IO would be 2004-01.
What is the point of these IDs? It seems like it adds busywork for reviewers and no especially useful information. Now we're talking about making them more complicated...
Three Reasons:
1) As Review Wizard, I feel that assigning a unique identification number to each reviewed library will help me stay organized.
That's good enough for me.
2) Helps in searching for related posts.
That's even better.
3) As library authors are regularly changing the names of their libraries,
?? really ?? I guess I'll take your word for it.
this will help manage the historical record of the review process.
-- Dave Abrahams Boost Consulting http://www.boost-consulting.com
participants (7)
-
David Abrahams
-
David B. Held
-
Gennadiy Rozental
-
Jeff Garland
-
Pavel Vozenilek
-
Thomas Wenisch
-
tom brinkman