Review Wizard Status Report for May 2008
News
December 7, 2007 - Forward Library Accepted - Awaiting SVN
December 16 - Unordered Containers Library Accepted - In SVN
December 21 - Factory Library Accepted - Awaiting SVN
January 13, 2008 - Switch Library Accepted Provisionally - Awaiting submission for mini review
January 18 - Singleton Library Rejected - Awaiting resubmission, John Torjo has already volunteered to manage the next review
January 30 - Flyweight Library Accepted - Awaiting SVN
February 13 - Logging Library Rejected - Awaiting resubmission for new review, John Torjo has already resubmitted and Gennadiy Rozental has again volunteered to manage the review
February 27 - Floating Point Utilities Library Accepted - Awaiting SVN
March 14 - Proto Library Accepted - Exists as a component in Xpressive, but not yet as a separate library
April 20 - Egg review completed - Results pending
May 7 - Scope Exit Library Accepted - Awaiting SVN
Older Issues
The binary_int library, accepted in October 2005 has not yet been submitted to SVN. The authors are strongly encouraged to contact the review wizards
The Quantitative Units library, accepted in April 2007 has not yet been submitted to SVN
The Globally Unique Identifier library, accepted provisionally in May 2007 has not yet been submitted for mini-review and full acceptance
The Time Series Library, accepted in August 2007 has not yet been submitted to SVN
The Accumulators library, accepted in February 2007 is in SVN
The Exception library, accepted in October 2007 is in SVN
The Scope Exit review report had not been submitted by the review manager. John Phillips stepped in as substitute review manager and produced a report
For libraries that are still waiting to get into SVN, please get them ready and into the repository. The developers did some great work making the libraries, so don't miss the chance to share that work with others. Also notice that the review process page has been updated with a section on rights and responsibilities of library submitters.
For the Scope Exit review, we would like to publicly apologize to Alexander Nasonov for how long this has languished without a report. The review wizards will work to make sure this doesn't happen any more.
General Announcements
As always, we need experienced review managers. In the past few months there have been a large number of reviews, but the flow of high quality submissions is just as big, so manage reviews if possible and if not please make sure to watch the review schedule and participate. Please take a look at the list of libraries in need of managers and check out their descriptions. In general review managers are active boost participants or library contributors. If you can serve as review manager for any of them, email Ron Garcia or John Phillips, "garcia at cs dot indiana dot edu" and "phillips at mps dot ohio-state dot edu" respectively.
A link to this report will be posted to www.boost.org. If you would like us to make any modifications or additions to this report before we do that, please email Ron or John.
If you're a library author and plan on submitting a library for review in the next 3-6 months, send Ron or John a short description of your library and we'll add it to the Libraries Under Construction below. We know that there are many libraries that are near completion, but we have hard time keeping track all of them. Please keep us informed about your progress.
Review Queue
- Finite State Machines
- Property Map (fast-track)
- Graph (fast-track)
- Lexer
- Thread-Safe Signals
- Boost.Range (Update)
- Shifted Pointer
- DataFlow Signals
- Logging
- Futures (Braddock Gaskill)
- Futures (Anthony Williams)
- Join (Yigong Liu)
- Pimpl (Vladimir Batov)
Finite State Machines
Author: | Andrey Semashev |
---|---|
Review Manager: | Martin Vuille |
Download: | Boost Sandbox Vault |
Description: |
The Boost.FSM library is an implementation of FSM (stands for Finite State Machine) programming concept. The main goals of the library are:
|
Property Map (fast-track)
Author: | Andrew Sutton |
---|---|
Review Manager: | Jeremy Siek |
Download: | http://svn.boost.org/svn/boost/sandbox/graph-v2 |
Description: |
A number of additions and modifications to the Property Map Library, including:
|
Graph (fast-track)
Author: | Andrew Sutton |
---|---|
Review Manager: | Jeremy Siek |
Download: | http://svn.boost.org/svn/boost/sandbox/graph-v2 |
Description: |
A number of additions and modifications to the Graph Library, including:
|
Lexer
Author: | Ben Hanson |
---|---|
Review Manager: | Eric Neibler |
Download: | Boost Sandbox Vault |
Description: | A programmable lexical analyser generator inspired by 'flex'. Like flex, it is programmed by the use of regular expressions and outputs a state machine as a number of DFAs utilising equivalence classes for compression. |
Thread-Safe Signals
Author: | Frank Hess |
---|---|
Review Manager: | Need Volunteer |
Download: | Boost Sandbox Vault |
Description: | A thread-safe implementation of Boost.Signals that has some interface changes to accommodate thread safety, mostly with respect to automatic connection management. |
Boost.Range (Update)
Author: | Neil Groves |
---|---|
Review Manager: | Needed |
Download: | Boost Sandbox Vault |
Description: | A significant update of the range library, including range adapters. |
Shifted Pointer
Author: | Phil Bouchard |
---|---|
Review Manager: | Needed |
Download: | Boost Sandbox Vault |
Description: | Smart pointers are in general optimized for a specific resource (memory usage, CPU cycles, user friendliness, ...) depending on what the user need to make the most of. The purpose of this smart pointer is mainly to allocate the reference counter (or owner) and the object itself at the same time so that dynamic memory management is simplified thus accelerated and cheaper on the memory map. |
DataFlow Signals
Author: | Stjepan Rajko |
---|---|
Review Manager: | Needed |
Download: | http://dancinghacker.com/code/dataflow/ |
Description: | Dataflow is a generic library for dataflow programming. Dataflow programs can typically be expressed as a graph in which vertices represent components that process data, and edges represent the flow of data between the components. As such, dataflow programs can be easily reconfigured by changing the components and/or the connections. |
Logging
Author: | John Torjo |
---|---|
Review Manager: | Gennadiy Rozental |
Download: | http://torjo.com/log2/ |
Description: | Used properly, logging is a very powerful tool. Besides aiding debugging/testing, it can also show you how your application is used. The Boost Logging Library allows just for that, supporting a lot of scenarios, ranging from very simple (dumping all to one destination), to very complex (multiple logs, some enabled/some not, levels, etc). It features a very simple and flexible interface, efficient filtering of messages, thread-safety, formatters and destinations, easy manipulation of logs, finding the best logger/filter classes based on your application's needs, you can define your own macros and much more! |
Futures
Author: | Braddock Gaskill |
---|---|
Review Manager: | Needed |
Download: | http://braddock.com/~braddock/future/ |
Description: | The goal of the boost.future library is to provide a definitive future implementation with the best features of the numerous implementations, proposals, and academic papers floating around, in the hopes to avoid multiple incompatible future implementations in libraries of related concepts (coroutines, active objects, asio, etc). This library hopes to explore the combined implementation of the best future concepts. |
Futures
Author: | Anthony Williams |
---|---|
Review Manager: | Needed |
Download: | http://www.justsoftwaresolutions.co.uk/files/n2561_future.hpp (code) http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2008/n2561.html (description) |
Description: |
This paper proposes a kind of return buffer that takes a value (or an exception) in one (sub-)thread and provides the value in another (controlling) thread. This buffer provides essentially two interfaces:
A typical procedure for working with promises and futures looks like:
Also proposed is a packaged_task that wraps one callable object and provides another one that can be started in its own thread and assigns the return value (or exception) to a return buffer that can be accessed through one of the future classes. With a packaged_task a typical procedure looks like:
|
Notice that we are in the unusual position of having two very different libraries with the same goal in the queue at the same time. The Review Wizards would appreciate a discussion of the best way to hold these two reviews to produce the best possible addition to Boost.
Join
Author: | Yigong Liu |
---|---|
Review Manager: | Needed |
Download: | http://channel.sourceforge.net/ |
Description: | Join is an asynchronous, message based C++ concurrency library based on join calculus. It is applicable both to multi-threaded applications and to the orchestration of asynchronous, event-based applications. It follows Comega's design and implementation and builds with Boost facilities. It provides a high level concurrency API with asynchronous methods, synchronous methods, and chords which are "join-patterns" defining the synchronization, asynchrony, and concurrency. |
Pimpl
Author: | Vladimir Batov |
---|---|
Review Manager: | Needed |
Download: | Boost Sandbox Vault http://www.ddj.com/cpp/205918714 (documentation) |
Description: | The Pimpl idiom is a simple yet robust technique to minimize coupling via the separation of interface and implementation and then implementation hiding. This library provides a convenient yet flexible and generic deployment technique for the Pimpl idiom. It's seemingly complete and broadly applicable, yet minimal, simple and pleasant to use. |
Libraries under development
Please let us know of any libraries you are currently developing that you intend to submit for review.