30 March 2008

Boost 1.35 Released

A new version of the Boost Library for C++ has been released. Version 1.35 adds 12 new libraries as well as the usual improvements and bugfixes. Also there is a new look website which is a nice looking refinement with better access to the documentation. Boost is a great addition to any C++ developer's armament.

I think this is also the first release using all their new tools and processes (Subversion, Trac, website and other stuff) so I think it is possible that future releases will be more frequent with this framework in place, because I think the plan was originally to have a release twice a year. That might mean there is a possibility of the logging library by John Torjo being integrated soon as well as some others.

Some of the work brings the current libraries in line with the new C++ TR1 library standard - mainly to do with threads.

The new libraries are:

  • Asio: Portable networking, including sockets, timers, hostname resolution and socket iostreams, from Chris Kohlhoff.
  • Bimap: Boost.Bimap is a bidirectional maps library for C++. With Boost.Bimap you can create associative containers in which both types can be used as key, from Matias Capeletto.
  • Circular Buffer: STL compliant container also known as ring or cyclic buffer, from Jan Gaspar.
  • Function Types: Boost.FunctionTypes provides functionality to classify, decompose and synthesize function, function pointer, function reference and pointer to member types. From Tobias Schwinger.
  • Fusion: Library for working with tuples, including various containers, algorithms, etc. From Joel de Guzman, Dan Marsden and Tobias Schwinger.
  • GIL: Generic Image Library, from Lubomir Bourdev and Hailin Jin.
  • Interprocess: Shared memory, memory mapped files, process-shared mutexes, condition variables, containers and allocators, from Ion GaztaƱaga.
  • Intrusive: Intrusive containers and algorithms, from Ion GaztaƱaga.
  • Math/Special Functions: A wide selection of mathematical special functions from John Maddock, Paul Bristow, Hubert Holin and Xiaogang Zhang.
  • Math/Statistical Distributions: A wide selection of univariate statistical distributions and functions that operate on them from John Maddock and Paul Bristow
  • MPI: Message Passing Interface library, for use in distributed-memory parallel application programming, from Douglas Gregor and Matthias Troyer.
  • System: Operating system support, including the diagnostics support that will be part of the C++0x standard library, from Beman Dawes.