diff --git a/index.htm b/index.htm index 6266ec5bd0..2e86dedf49 100644 --- a/index.htm +++ b/index.htm @@ -1,1019 +1,551 @@ - - - - - Boost C++ Libraries - - - - - - - -
-
-
-
-
-

- -

“...one of the - most highly regarded and expertly designed C++ library projects - in the world.” — - Herb Sutter and Andrei - Alexandrescu, C++ Coding - Standards

- -
-
-
- -
- - - - - - - - - - -
-
-

BoostCon `07

- -
-
-
-

T-Minus - Today is the day!!!

- -

BoostCon`07

-
-
-
-
- -
-

Welcome to Boost.org!

- -
-
-
-

Boost provides free peer-reviewed portable C++ - source libraries.

- -

We emphasize libraries that work well with the C++ - Standard Library. Boost libraries are intended to be - widely useful, and usable across a broad spectrum of - applications. The Boost license encourages - both commercial and non-commercial use.

- -

We aim to establish "existing practice" and - provide reference implementations so that Boost - libraries are suitable for eventual standardization. - Ten Boost libraries are already included in the - C++ - Standards Committee's Library Technical Report ( - - TR1) as a step toward becoming part of a future - C++ Standard. More Boost libraries are proposed for - the upcoming - TR2.

- -

Getting - started: Boost works - on almost any modern operating system, including UNIX - and Windows variants. Follow the Getting Started Guide - to download and install Boost. Popular Linux and Unix - distributions such as Fedora, Debian, and NetBSD include pre-built - Boost packages. Boost may also already be available - on your organization's internal web - server.

- -

Background: The Background Information - page has introductory material to help those - educating their organization about Boost.

-
-
-
-
- -
-

Participation

- -
-
-
-

Although Boost was begun by members of the C++ - Standards Committee Library Working Group, - participation has expanded to include thousands of - programmers from the C++ community at large.

- -

If you are interested in participating in Boost, - please join our main developers mailing - list. Discussions are highly technical, and list - members are encouraged to participate in formal - reviews of proposed libraries. There is also a - users mailing - list, and several project specific - lists.

- -

Both the main Boost developers list and the users - list are also accessible as newsgroups.

-
-
-
-
- -
-

Latest News

- -
-
-
- -

April 30, 2007 - GUID Review Begins

- -
    -
  • View the announcement - here.
  • -
- -

April 26, 2007 - Version 1.34.0 Beta

- -
    -
  • View the announcement - here.
  • -
- -

April 11, 2007 - Math Toolkit Review Begins

- -
    -
  • View the announcement - here.
  • -
- -

April 11, 2007 - Quantitative Units Accepted

- -
    -
  • View the announcement - here.
  • -
- -

April 2, 2007 - Intrusive Containers - Accepted

- -
    -
  • View the announcement - here.
  • -
- -

March 26, 2007 - Quantitative Units Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

March 12, 2007 - Intrusive Containers Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

March 3, 2007 - Bimap Accepted

- -
    -
  • View the announcement - here.
  • -
- -

February 19, 2007 - Accumulators Accepted

- -
    -
  • View the announcement - here.
  • -
- -

February 15, 2007 - Bimap Review Begins

- -
    -
  • View the announcement - here.
  • -
- -

January 29, 2007 - Accumulators Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

November 28, 2006 - Function Types Accepted

- -
    -
  • View the announcement - here.
  • -
- -

November 7, 2006 - Generic Image Library - Accepted

- -
    -
  • View the announcement - here.
  • -
- -

November 6, 2006 - Function Types Re-Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

October 19, 2006 - An overview of Boost - participation in Google Summer of Code™ - 2006

- -
    -
  • Read - here about the first experience of Boost in - this open source initiative sponsored by - Google.
  • -
- -

October 7, 2006 - Pimpl_ptr Library Rejected

- -
    -
  • View the announcement - here.
  • -
- -

October 5, 2006 - Generic Image Library Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

September 21, 2006 - Message Passing - Accepted

- -
    -
  • View the announcement - here.
  • -
- -

September 15, 2006 - BoostCon 2007

- -
    -
  • The inaugural Boost conference will be held May - 14-18, 2007, in Aspen Colorado. See our preliminary - announcement - page for more information.
  • -
- -

September 6, 2006 - Message Passing Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

June 19, 2006 - Physical Quantities System - Rejected

- -
    -
  • View the announcement - here.
  • -
- -

June 6, 2006 - Fusion Library Accepted

- -
    -
  • View the announcement - here.
  • -
- -

May 31, 2006 - Physical Quantities System Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

May 20, 2006 - Property Tree Accepted

- -
    -
  • View the announcement - here.
  • -
- -

May 15, 2006 - Pimpl Pointer Review Begins

- -
    -
  • View the announcement - here.
  • -
- -

May 1, 2006 - Fusion Review Begins

- -
    -
  • View the announcement - here.
  • -
- -

April 28, 2006 Boost Selected as Mentoring - Organization for Google Summer of Code

- -
    -
  • View the announcement - here.
  • -
- -

April 18, 2006 - Property Tree Review Begins

- -
    -
  • View the announcement - here.
  • -
- -

April 12, 2006 - Promotion Traits Accepted

- -
    -
  • View the announcement - here.
  • -
- -

April 1, 2006 - Promotion Traits Mini-Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

March 30, 2006 - Review Wizard's Report

- - - -

March 22, 2006 - Asynchronous I/O Library - Accepted

- -
    -
  • View the announcement - here.
  • -
- -

February 17, 2006 - Shared Memory Library - Accepted

- -
    -
  • View the announcement - here.
  • -
- -

February 6, 2006 - Shared Memory Library Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

February 5, 2006 - Fixed String Library - Rejected

- -
    -
  • View the announcement - here.
  • -
- -

January 19, 2006 - Fixed String Library Review - Begins

- -
    -
  • View the announcement - here.
  • -
- -

January 19, 2006 - Review Wizard's Report

- - - -

December 5, 2005 - Version 1.33.1

- -

Updated Libraries

- -
    -
  • Any - Library: Cast to reference types - introduced in 1.33.0 is now documented on - any_cast documentation page.
  • - -
  • Config - Library: Don't undef BOOST_LIB_TOOLSET - after use.
  • - -
  • - - Boost.Python: - -
      -
    • The build now assumes Python 2.4 by - default, rather than 2.2
    • - -
    • Support Python that's built without Unicode - support
    • - -
    • Support for wrapping classes with - overloaded address-of (&) - operators
    • -
    -
  • - -
  • Smart - Pointer Library: Fixed problems under - Metrowerks CodeWarrior on PowerPC (Mac OS X) with - inlining on, GNU GCC on PowerPC 64.
  • - -
  • Regex - Library: Fixed the supplied makefiles, - and other small compiler specific changes. Refer to - the regex - history page for more information on these and - other small changes.
  • - -
  • - Iostreams Library: Improved the - interface for accessing a chain's components, added - is_open members to the file and file - descriptor devices, fixed memory-mapped files on - Windows, and made minor changes to the - documentation.
  • - -
  • - Functional/Hash Library: Fixed the - points example.
  • - -
  • - Multi-index Containers Library: Fixed a - problem with multithreaded code, and other minor - changes. Refer to the library - release notes for further details.
  • - -
  • - - Graph Library: - -
      -
    • Fixed a problem with the relaxed heap on - x86 Linux (fixes bug in - dijkstra_shortest_paths).
    • - -
    • Fixed problems with - cuthill_mckee_ordering and - - king_ordering producing no - results.
    • - -
    • Added color_map parameter to - dijkstra_shortest_paths.
    • -
    -
  • - -
  • Signals - Library: Fixed problems with the use of - Signals across shared library boundaries.
  • - -
  • Thread - library: read_write_mutex - has been removed due to problems with - deadlocks.
  • - -
  • Wave - library (V1.2.1) Fixed a couple of - problems, refer to the change - log for further details.
  • -
- -

Supported Compilers

- -

Boost is tested on a wide range of compilers and - platforms. Since Boost libraries rely on modern C++ - features not available in all compilers, not all - Boost libraries will work with every compiler. The - following compilers and platforms have been - extensively tested with Boost, although many other - compilers and platforms will work as well. For more - information, see the regression - test results.

- -

New for this release: Support for building - with the newest STLport-5.0 was added. The support - includes building with MinGW Runtime 3.8 plus - STLport-5.0 improved to support wide character - operations. Apple GCC 4.0, HP Tru64 C++, and - Microsoft Visual C++ 8.0 are supported platforms. We - have added an experimental autoconf-like - configure script for Unix-like systems: - run configure --help for more - information.

- -
    -
  • Apple - GCC 3.3, 4.0 on Mac OS X.
  • - -
  • Borland - C++ 5.6.4 on Windows.
  • - -
  • GNU C++ - 2.95.3 (with and without STLport), 3.2.x., 3.3.x, - 3.4.x, 4.0.x on Windows, Linux and Solaris.
  • - -
  • HP - C++ for Tru64 UNIX 7.1.
  • - -
  • - Intel C++ 8.1, 9.0 on Windows, Linux.
  • - -
  • Metrowerks - CodeWarrior 8.3, 9.4, 9.5 on Mac OS X and - Windows.
  • - -
  • Microsoft - Visual C++ 6.0 (sp5, with and without STLport), - 7.0, 7.1, 8.0. Note: Boost does not support the - non-standard "Safe" C++ Library shipping with - Visual C++ 8.0, which may result in many spurious - warnings from Boost headers and other - standards-conforming C++ code. To suppress these - warnings, define the macro - _SCL_SECURE_NO_DEPRECATE.
  • -
- -

Acknowledgements

- -

- Douglas - Gregor managed this release.

- -

A great number of people contributed their time - and expertise to make this release possible. Special - thanks go to Aleksey Gurtovoy and Misha Bergal, who - managed to keep the regression testing system working - throughout the release process; David Abrahams, Beman - Dawes, Aleksey Gurtovoy, Bronek Kozicki, Rene Rivera - and Jonathan Turkanis for greatly improving the - quality of this release; Rene Rivera for the new - Boost web page design; and Zoltan "cad" Juhasz for - the new Boost logo.

-
-
-
-
- -
-
-
-
-
-
- - + + + + +
+
+
+
+
+

+

“...one of the most highly regarded and +expertly designed C++ library projects in the world.” Herb Sutter and Andrei Alexandrescu, +C++ Coding +Standards

+
+
+ + + + + + +
+
+

Welcome to Boost.org!

+
+
+
+

Boost provides free peer-reviewed portable C++ source libraries.

+

We emphasize libraries that work well with the C++ Standard Library. + Boost libraries are intended to be widely useful, and usable across a + broad spectrum of applications. The Boost + license encourages both commercial and non-commercial use.

+

We aim to establish "existing practice" and provide reference + implementations so that Boost libraries are suitable for eventual + standardization. Ten Boost libraries are already included in the C++ Standards + Committee's Library Technical Report ( TR1) + as a step toward becoming part of a future C++ Standard. More Boost + libraries are proposed for the upcoming TR2.

+

Getting started: Boost works on almost any modern operating system, + including UNIX and Windows variants. Follow the Getting Started Guide to download and + install Boost. Popular Linux and Unix distributions such as Fedora, Debian, and NetBSD include pre-built Boost packages. + Boost may also already be available on your organization's internal web + server.

+

Background: The Background Information + page has introductory material to help those educating their + organization about Boost.

+
+

Participation

+
+
+
+

Although Boost was begun by members of the C++ Standards Committee + Library Working Group, participation has expanded to include thousands of + programmers from the C++ community at large.

+

If you are interested in participating in Boost, please join our main + developers mailing list. + Discussions are highly technical, and list members are encouraged to + participate in formal reviews of proposed libraries. There is also a users mailing list, and several project specific lists.

+

Both the main Boost developers list and the users list are also + accessible as newsgroups.

+
+

Latest News

+
+
+
+

May 12, 2007 - Version 1.34.0

+

New Libraries

+
    +
  • Foreach + Library: BOOST_FOREACH macro for easily iterating + over the elements of a sequence, from Eric Niebler. +
  • Statechart Library: + Arbitrarily complex finite state machines can be implemented in easily + readable and maintainable C++ code, from Andreas Huber. +
  • TR1 + Library: An implementation of the C++ Technical Report on + Standard Library Extensions, from John Maddock. This library does not + itself implement the TR1 components, rather it's a thin wrapper that + will include your standard library's TR1 implementation (if it has one), + otherwise it will include the Boost Library equivalents, and import them + into namespace std::tr1. Highlights include: Reference + Wrappers, Smart Pointers, result_of, Function Object Binders, + Polymorphic function wrappers, Type Traits, Random Number Generators and + Distributions, Tuples, Fixed Size Array, Hash Function Objects, Regular + Expressions, and Complex Number Additional Algorithms. +
  • Typeof + Library: Typeof operator emulation, from Arkadiy Vertleyb and + Peder Holt. +
  • Xpressive + Library: Regular expressions that can be written as strings + or as expression templates, and that can refer to each other and + themselves recursively with the power of context-free grammars, from + Eric Niebler.
+

Updated Libraries

+
    +
  • Assign + Library: +
      +
    • Support for ptr_map<key,T> via the new function + ptr_map_insert() +
    • Support for initialization of Pointer Containers when the + containers hold pointers to an abstract base class.
    +
  • Date_time + library: +
      +
    • Support for new US/Canada timezone rules and other bug fixes. See + Change History + for details.
    +
  • Filesystem Library: + Major upgrade in preparation for submission to the C++ Standards + Committee for TR2. Changes include: +
      +
    • Internationalization, + provided by class templates basic_path, + basic_filesystem_error, basic_directory_iterator, and + basic_directory_entry. +
    • Simplification + of the path interface by eliminating special constructors to identify + native formats. +
    • Rationalization + of predicate function design, including the addition of several new + functions. +
    • Clearer specification by reference to POSIX, the ISO/IEEE + Single Unix Standard, with provisions for Windows and other operating + systems. +
    • Preservation of + existing user code whenever possible. +
    • More + efficient directory iteration. +
    • Addition of a recursive + directory iterator.
    +
  • Function + Library: Boost.Function now implements a small buffer + optimization, which can drastically improve the performance when copying + or constructing Boost.Function objects storing small function objects. + For instance, bind(&X:foo, &x, _1, _2) requires no + heap allocation when placed into a Boost.Function object. +
  • Functional/Hash + Library +
      +
    • Use declarations for standard classes, so that the library doesn't + need to include all of their headers +
    • Deprecated the <boost/functional/hash/*.hpp> + headers. +
    • Add support for the BOOST_HASH_NO_EXTENSIONS macro, which + disables the extensions to TR1 +
    • Minor improvements to the hash functions for floating point + numbers.
    +
  • Graph + Library: + +
  • MultiArray + Library: Boost.MultiArray now by default provides + range-checking for operator[]. Range checking can be + disabled by defining the macro BOOST_DISABLE_ASSERTS before + including multi_array.hpp. A bug in + multi_array::resize() related to storage orders was fixed. +
  • Multi-index Containers + Library: + +
  • Optional + Library: +
      +
    • boost::none_t and boost::none now added to Optional's + documentation +
    • Relational operators now directly support arguments of type + 'T' and 'none_t' +
    • operator->() now also works with reference types. +
    • Helper functions make_optional(val), make_optional(cond,val) + and get_optional_value_or(opt,alternative_value) added. +
    • Constructor taking a boolean condition (as well as a value) added. + +
    • Member function get_value_or(alternative_value) + added. +
    • Incompatbility bug with mpl::apply<> fixed. +
    • Converting assignment bug with uninitialized lvalues fixed. +
    +
  • Parameter + Library: +
      +
    • Every ArgumentPack is now a valid MPL Forward + Sequence. +
    • Support for unnamed arguments (those whose keyword is deduced from + their types) is added. +
    • Support for named and unnamed template arguments is added. +
    • New overload generation macros solve the forwarding + problem directly. +
    • See also the Python library changes, below.
    +
  • Pointer + Container Library: +
      +
    • Support for serialization via Boost.Serialization. +
    • Exceptions can be disabled by defining the macro + BOOST_PTR_CONTAINER_NO_EXCEPTIONS before including any header. This + macro is defined by default if BOOST_NO_EXCEPTIONS is defined. +
    • Additional std::auto_ptr<T> overloads added + s.t. one can also pass std::auto_ptr<T> instead of + only T* arguments to member functions. +
    • transfer() now has weaker requirements s.t. one can + transfer objects from ptr_container<Derived> to + ptr_container<Base>,
    +
  • Python + Library: +
      +
    • Boost.Python now automatically appends C++ signatures to + docstrings. The new docstring_options.hpp + header is available to control the content of docstrings. +
    • stl_input_iterator, + for turning a Python iterable object into an STL input iterator, from + Eric Niebler. +
    • Support for void* conversions is added. +
    • Integrated support for wrapping C++ functions built with the + parameter library; keyword names are automatically known to + docsstrings. +
    • Enhancements to the API for better embedding support + (boost::python::import(), + boost::python::exec(), and + boost::python::exec_file()).
    +
  • Signals + Library: More improvements to signal invocation performance + from Robert Zeh. +
  • Smart + Pointers Library: + +
  • String Algorithm + Library: +
      +
    • lexicographical_compare +
    • join +
    • New comparison predicates is_less, + is_not_greater. +
    • Negative indexes support (like Perl) in various algorihtms + (*_head/tail, *_nth).
    +
  • Wave + Library: +
      +
    • Wave now correctly recognizes pp-number tokens as mandated by the + C++ Standard, which are converted to C++ tokens right before they are + returned from the library. +
    • Several new preprocessing hooks have been added. For a complete + description please refer to the related documentation page: The Context + Policy. +
    • Shared library (dll) support has been added for the generated Wave + libraries. +
    • The overall error handling has been improved. It is now possible + to recover and continue after an error or a warning was issued. +
    • Support for optional comment and/or full whitespace preservation + in the generated output stream has been added. +
    • The Wave library now performs automatic include guard detection to + avoid accessing header files more than once, if appropriate. +
    • Full interactive mode has been added to the Wave tool. Now the + Wave tool can be used just like Python or Perl for instance to + interactively try out your BOOST_PP macros. Additionally it is now + possible to load and save the current state of an interactive session + (macro tables et.al.). +
    • The overall performance has been improved by upto 40-60%, + depending on the concrete files to process. +
    • Support for new pragmas has been added allowing to control certain + library features from inside the preprocessed sources (partial output + redirection, control of generated whitespace and #line directives). +
    • Optional support for #pragma message "..." has been added. +
    • This version also includes a number of bug fixes and usage + improvements. For a complete list of changes, see the libraries change log.
+

Supported Compilers

+

Boost is tested on a wide range of compilers and platforms. Since Boost + libraries rely on modern C++ features not available in all compilers, not + all Boost libraries will work with every compiler. The following compilers + and platforms have been extensively tested with Boost, although many other + compilers and platforms will work as well. For more information, see the + regression test + results.

+
    +
  • Apple GCC 4.0.1 on Mac OS + X. +
  • Borland + C++ 5.8.2 on Windows. +
  • GNU C++ +
      +
    • 3.2.x., 3.3.x, 3.4.x, 4.0.x, 4.1.x on Linux +
    • 4.1.x on Solaris +
    • 3.4.x on Windows
    +
  • HP aC++ A.06.14. +
  • Intel + C++ 9.1 on Windows, 9.0 on Linux. +
  • Metrowerks CodeWarrior 9.4 + on Windows. +
  • Microsoft Visual + C++ 6.0 (sp5, with and without STLport), 7.0, 7.1, 8.0. Note: Boost + does not support the non-standard "Safe" C++ Library shipping with + Visual C++ 8.0, which may result in many spurious warnings from Boost + headers and other standards-conforming C++ code. To suppress these + warnings, define the macro _SCL_SECURE_NO_DEPRECATE. +
  • Sun + Studio 11 on Solaris.
+

Acknowledgements

+

Thomas Witt managed this + release.

+

A great number of people contributed their time and expertise to make + this release possible. Special thanks go to Vladimir Prus for making + Boost.Build version 2 a reality, David Abrahams for authoring a new + Getting Started guide, Rene Rivera for general build and installation + support and Greg D. for answering countless + questions.

+