Hello everyone,
The review of the proposed Boost Bimap library written by Matias
Capeletto starts today (February 15th, 2007) and ends after 10 days
(February 25, 2007).
Documentation for the library can be found online here:
http://tinyurl.com/e2os3
The library can be downloaded from Boost.Vault/Containers:
URL: http://www.boost-consulting.com/vault/index.php?directory=Containers
Tiny URL: http://tinyurl.com/ysfclr
Online documentation and the documentation package can be found here:
http://tinyurl.com/y95qng
---------------------------------------------------
Context:
The library has been developed by Matias Capeletto with the mentoring
of Joaquín M López Muñoz in the context of the Google SoC 2006. You
can find more information about SoC projects here:
http://code.google.com/soc/boost/about.html
You can read an overview of Boost participation in Google Summer of
Code 2006 written by Joaquín M López Muñoz here:
http://boost.org/more/boost_soc_06_overview.html
---------------------------------------------------
About the library:
With Boost.Bimap you can create associative containers in which both
types can be used as key. A bimap can be thought of as a
combination of a std::map and a std::map. The learning curve
of bimap is almost flat if you know how to use standard containers. A
great deal of effort has been put into mapping the naming scheme of
the STL in Boost.Bimap. The library is designed to match the common
STL containers.
Boost.Bimap offers also advanced features:
-> Boost.Bimap offers much more than just a one-to-one ordered unique
bidirectional map. It is possible to control the set type of each side
of the relationship that the bimap represents, giving one-to-many
containers, hashed bidirectional containers and others that may be
more suitable to the the task at hand.
-> The types of a bimap can be tagged so that each side is accessible
by something closer to the problem than left and right. This leads to
more readable, self-documenting code.
-> The extended mapping framework allows to disable a view of a bimap,
including the standard mapping containers as a particular case.
Bimap has been tested in the following platforms:
GCC 3.4/Linux
GCC 4.0/Linux, Mac
VS 7.1/Windows
VS 8.0/Windows
ICC 7.1/Windows
ICC 8.0/Windows
---------------------------------------------------
Please always state in your review, whether you think the library should be
accepted as a Boost library!
Additionally please consider giving feedback on the following general
topics:
- What is your evaluation of the design?
- What is your evaluation of the implementation?
- What is your evaluation of the documentation?
- What is your evaluation of the potential usefulness of the library?
- Did you try to use the library? With what compiler? Did you have any problems?
- How much effort did you put into your evaluation? A glance? A quick
reading? In-depth study?
- Are you knowledgeable about the problem domain?
Ion Gaztañaga
Review Manager