| Libraries

Getting Started Tools Web Site News Community FAQ More Info

Libraries Listed Alphabetically
Libraries Listed by Category

Algorithms
Broken Compiler Workarounds
Concurrent Programming
Containers
Correctness and Testing
Data Structures
Domain Specific
Function Objects and Higher-order Programming
Generic Programming
Image Processing
Input/Output
Inter-language Support
Iterators
Language Features Emulation
Math and Numerics
Memory
Parsing
Patterns and Idioms
Preprocessor Metaprogramming
Programming Interfaces
State Machines
String and Text Processing
System
Template Metaprogramming
Miscellaneous

Libraries Retired from Boost

See Getting Started page to find out how to download, build, and install the libraries.

## Libraries Listed Alphabetically

- accumulators - Framework for incremental calculation, and collection of statistical accumulators, from Eric Niebler.
- algorithm - A collection of useful generic algorithms, from Marshall Clow.
- align - Memory alignment functions, allocators, and adaptors, from Glen Fernandes.
- any - Safe, generic container for single values of different value types, from Kevlin Henney.
- array - STL compliant container wrapper for arrays of constant size, from Nicolai Josuttis.
- asio - Portable networking and other low-level I/O, including sockets, timers, hostname resolution, socket iostreams, serial ports, file descriptors and Windows HANDLEs, from Chris Kohlhoff.
- assert - Customizable assert macros, from Peter Dimov.
- assign - Filling containers with constant or generated data has never been easier, from Thorsten Ottosen.
- atomic - C++11-style atomic<>, from Helge Bahmann, maintained by Tim Blechmann.
- bimap - Bidirectional maps, from Matias Capeletto.
- bind and mem_fn - Generalized binders for function/object/pointers and member functions, from Peter Dimov.
- call_traits - Defines types for passing parameters, from John Maddock, Howard Hinnant, et al.
- chrono - Useful time utilities, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá.
- circular_buffer - STL compliant container also known as ring or cyclic buffer, from Jan Gaspar.
- compatibility - Help for non-conforming standard libraries, from Ralf Grosse-Kunstleve and Jens Maurer.
- compressed_pair - Empty member optimization, from John Maddock, Howard Hinnant, et al.
- concept check - Tools for generic programming, from Jeremy Siek.
- config - Helps boost library developers adapt to compiler idiosyncrasies; not intended for library users.
- container - Standard library containers and extensions, from Ion Gaztañaga
- context - Context switching library, from Oliver Kowalke
- conversion - Polymorphic casts, from Dave Abrahams and Kevlin Henney.
- convert - An extendible and configurable type-conversion framework, from Vladimir Batov
- core - A collection of simple core utilities with minimal dependencies, maintained by Peter Dimov, Glen Fernandes, and Andrey Semashev.
- coroutine - Coroutine library, from Oliver Kowalke
- coroutine2 - Coroutine2 library (C++14), from Oliver Kowalke
- crc - Cyclic Redundancy Code, from Daryle Walker.
- date_time - Date-Time library from Jeff Garland.
- dynamic_bitset - A runtime sized version of `std::bitset` from Jeremy Siek and Chuck Allison.
- endian - Types and conversion functions for correct byte ordering and more regardless of processor endianness, from Beman Dawes
- enable_if - Selective inclusion of function template overloads, from Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine.
- exception - A library for transporting of arbitrary data in exception objects, and transporting of exceptions between threads (N2179), from Emil Dotchevski.
- filesystem - Portable paths, iteration over directories, and other useful filesystem operations, from Beman Dawes.
- flyweight - Design pattern to manage large quantities of highly redundant objects, from Joaquín M López Muñoz.
- foreach - BOOST_FOREACH macro for easily iterating over the elements of a sequence, from Eric Niebler.
- format - Type-safe 'printf-like' format operations, from Samuel Krempp.
- function - Function object wrappers for deferred calls or callbacks, from Doug Gregor.
- function_types - Type traits for callable, built-in types, from Tobias Schwinger
- functional - Enhanced function object adaptors, from Mark Rodgers.
- functional/factory - function object templates for dynamic and static object creation, from Tobias Schwinger
- functional/forward - adapters to allow generic function objects to accept arbitrary arguments, from Tobias Schwinger
- functional/hash - A TR1 hash function object that can be extended to hash user defined types, from Daniel James.
- functional/overloaded_function - Overload different functions into a single function object, from Lorenzo Caminiti.
- 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.
- geometry - Geometry Library, from Barend Gehrels, Bruno Lalande, Mateusz Loskot and Adam Wulkiewicz.
- graph - Generic graph components and algorithms, from Jeremy Siek and a University of Notre Dame team; now maintained by Andrew Sutton and Jeremiah Willcock.
- heap - Priority queue data structures, from Tim Blechmann
- icl - Interval Container Library, interval sets and maps and aggregation of associated values, from Joachim Faulhaber.
- identity_type - Wrap types within round parenthesis so they can always be passed as macro parameters, from Lorenzo Caminiti.
- integer - Headers to ease dealing with integral types.
- interprocess - Shared memory, memory mapped files, process-shared mutexes, condition variables, containers and allocators, from Ion Gaztañaga
- interval - Extends the usual arithmetic functions to mathematical intervals, from Guillaume Melquiond, Hervé Brönnimann and Sylvain Pion.
- intrusive - Intrusive containers and algorithms, from Ion Gaztañaga
- in_place_factory, typed_in_place_factory- Generic in-place construction of contained objects with a variadic argument-list, from Fernando Cacciola.
- io state savers - Save I/O state to prevent jumbled data, from Daryle Walker.
- iostreams - Framework for defining streams, stream buffers and i/o filters, from Jonathan Turkanis.
- iterator - Iterator construction framework, adaptors, concepts, and more, from Dave Abrahams, Jeremy Siek, and Thomas Witt.
- lambda - Define small unnamed function objects at the actual call site, and more, from Jaakko Järvi and Gary Powell.
- lexical_cast - General literal text conversions, such as an `int` represented as a `string`, or vice-versa, from Kevlin Henney.
- local_function - Program functions locally, within other functions, directly within the scope where they are needed, from Lorenzo Caminiti.
- locale - Provide localization and Unicode handling tools for C++, from Artyom Beilis
- lockfree - Lockfree data structures, from Tim Blechmann
- log - Logging library, from Andrey Semashev
- math - Several contributions in the domain of mathematics, from various authors.
- math/complex number algorithms - These complex number algorithms are the inverses of trigonometric functions currently present in the C++ standard, from John Maddock.
- math/common_factor - Greatest common divisor and least common multiple, from Daryle Walker.
- math/constants - A wide range of numeric constants from Paul Bristow and John Maddock.
- math/floating point utilities - Utilities for manipulating floating point values from Johan Rade.
- math/octonion - Octonions, from Hubert Holin.
- 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
- math/quaternion - Quaternions, from Hubert Holin.
- minmax - standard library extensions for simultaneous min/max and min/max element computations, from Hervé Brönnimann.
- move - Portable move semantics for C++03 and C++1 compilers, from Ion Gaztañaga
- MPI - Message Passing Interface library, for use in distributed-memory parallel application programming, from Douglas Gregor and Matthias Troyer.
- mpl - Template metaprogramming framework of compile-time algorithms, sequences and metafunction classes, from Aleksey Gurtovoy.
- meta state machine - High-performance expressive UML 2.0 finite state machines, from Christophe Henry.
- multi_array - Multidimensional containers and adaptors for arrays of contiguous data, from Ron Garcia.
- multi_index - Containers with multiple STL-compatible access interfaces, from Joaquín M López Muñoz.
- multiprecision - Extended precision arithmetic types for floating point, integer and rational arithmetic from John Maddock and Christopher Kormanyos.
- numeric/conversion - Optimized Policy-based Numeric Conversions, from Fernando Cacciola.
- odeint - Solving ordinary differential equations, from Karsten Ahnert and Mario Mulansky.
- operators - Templates ease arithmetic classes and iterators, from Dave Abrahams and Jeremy Siek.
- optional - Discriminated-union wrapper for optional values, from Fernando Cacciola.
- parameter - Write functions that accept arguments by name, by David Abrahams and Daniel Wallin.
- Phoenix - Define small unnamed function objects at the actual call site, and more, from Joel de Guzman, Dan Marsden and Thomas Heller
- Predef - This library defines a set of compiler, architecture, operating system, library, and other version numbers from the information it can gather of C, C++, Objective C, and Objective C++ predefined macros or those defined in generally available headers, from Rene Rivera.
- pointer container - Containers for storing heap-allocated polymorphic objects to ease OO-programming, from Thorsten Ottosen.
- polygon - Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates, from Lucanus Simonson, Andrii Sydorchuk.
- pool - Memory pool management, from Steve Cleary.
- preprocessor - Preprocessor metaprogramming tools including repetition and recursion, from Vesa Karvonen and Paul Mensonides.
- program_options - Access to configuration data given on command line, in config files and other sources, from Vladimir Prus.
- property map - Concepts defining interfaces which map key objects to value objects, from Jeremy Siek.
- property tree - A tree data structure especially suited to storing configuration data, from Marcin Kalicinski and Sebastian Redl.
- proto - Expression template library and compiler construction toolkit for domain-specific embedded languages, from Eric Niebler.
- python - Reflects C++ classes and functions into Python, from Dave Abrahams.
- random - A complete system for random number generation, from Jens Maurer.
- range - Concepts and utilities for range-based algorithms, as well as range-based algorithms and range adaptors that allow for efficient and very expressive code, from Thorsten Ottosen and Neil Groves.
- ratio - Compile time rational arithmetic, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá.
- rational - A rational number class, from Paul Moore.
- ref - A utility library for passing references to generic functions, from Jaako Järvi, Peter Dimov, Doug Gregor, and Dave Abrahams.
- regex - Regular expression library, from John Maddock.
- result_of - determines the type of a function call expression.
- scope_exit - Execute arbitrary code at scope exit, from Alexander Nasonov and Lorenzo Caminiti.
- serialization - Serialization for persistence and marshalling, from Robert Ramey
- signals (deprecated) - managed signals & slots callback implementation, from Doug Gregor.
- signals2 - managed signals & slots callback implementation (thread-safe version 2), from Frank Mori Hess.
- smart_ptr - Six smart pointer class templates, from Greg Colvin, Beman Dawes, Peter Dimov, Darin Adler, and Glen Fernandes.
- sort - library that includes spreadsort, a general-case hybrid radix sort that is faster than O(n*log(n))
- statechart - Arbitrarily complex finite state machines can be implemented in easily readable and maintainable C++ code, from Andreas Huber.
- static_assert - Static assertions (compile time assertions), from John Maddock.
- spirit - LL parser framework represents parsers directly as EBNF grammars in inlined C++, from Joel de Guzman, Hartmut Kaiser, Dan Nuffer and team.
- string_algo - String algorithms library, from Pavol Droba.
- swap - Enhanced generic swap function, from Joseph Gauterin.
- system - Operating system support, including the diagnostics support that will be part of the C++0x standard library, from Beman Dawes.
- test - Support for simple program testing, full unit testing, and for program execution monitoring, from Gennadiy Rozental.
- throw_exception - Common infrastructure for throwing exceptions, from Emil Dotchevski.
- thread - Portable C++ multi-threading, from William Kempf, Anthony Williams and Vicente J. Botet Escribá.
- timer - Event timer, progress timer, and progress display classes, from Beman Dawes.
- tokenizer - Break of a string or other character sequence into a series of tokens, from John Bandela.
- TR1 - An implementation of the Technical Report on C++ Library Extensions, using other Boost libraries as a basis, from John Maddock.
- tribool - 3-state boolean type library, from Doug Gregor.
- tti - Type Traits Introspection library, from Edward Diener
- tuple - Ease definition of functions returning multiple values, and more, from Jaakko Järvi.
- type_erasure - Runtime polymorphism based on concepts, from Steven Watanabe.
- type_index - Runtime/Compile time copyable type info, from Antony Polukhin.
- type_traits - Templates for fundamental properties of types, from John Maddock, Steve Cleary, et al.
- typeof - Typeof operator emulation, from Arkadiy Vertleyb and Peder Holt.
- uBLAS - Basic linear algebra for dense, packed and sparse matrices, from Joerg Walter and Mathias Koch.
- units - Zero-overhead dimensional analysis and unit/quantity manipulation and conversion, from Matthias Schabel and Steven Watanabe.
- unordered - unordered associative containers, from Daniel James.
- utility - Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom, from Dave Abrahams and others.
- value_initialized - Wrapper for uniform-syntax value initialization, from Fernando Cacciola, based on the original idea of David Abrahams.
- uuid - A universally unique identifier, from Andy Tompkins.
- variant - Safe, generic, stack-based discriminated union container, from Eric Friedman and Itay Maman.
- VMD - Variadic Macro Data library, from Edward Diener.
- wave - Standards conformant implementation of the mandated C99/C++ preprocessor functionality packed behind an easy to use iterator interface, from Hartmut Kaiser
- xpressive - 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.

## Libraries Listed by Category

### Algorithms

- algorithm - A collection of useful generic algorithms, from Marshall Clow.
- foreach - BOOST_FOREACH macro for easily iterating over the elements of a sequence, from Eric Niebler.
- gil - Generic Image Library, from Lubomir Bourdev and Hailin Jin.
- geometry - Geometry Library, from Barend Gehrels, Bruno Lalande and Mateusz Loskot.
- graph - Generic graph components and algorithms, from Jeremy Siek and a University of Notre Dame team; now maintained by Andrew Sutton and Jeremiah Willcock.
- minmax - standard library extensions for simultaneous min/max and min/max element computations, from Hervé Brönnimann.
- polygon - Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates, from Lucanus Simonson, Andrii Sydorchuk.
- range - A new infrastructure for generic algorithms that builds on top of the new iterator concepts, from Thorsten Ottosen.
- sort - library that includes spreadsort, a general-case hybrid radix sort that is faster than O(n*log(n))
- string_algo - String algorithms library, from Pavol Droba
- utility - Class next(), prior() function templates, from Dave Abrahams and others.

### Broken Compiler Workarounds

- compatibility - Help for non-conforming standard libraries, from Ralf Grosse-Kunstleve and Jens Maurer.
- config - Helps boost library developers adapt to compiler idiosyncrasies; not intended for library users.

### Concurrent Programming

- asio - Portable networking and other low-level I/O, including sockets, timers, hostname resolution, socket iostreams, serial ports, file descriptors and Windows HANDLEs, from Chris Kohlhoff.
- atomic - C++11-style atomic<>, from Helge Bahmann, maintained by Tim Blechmann
- context - Context switching library, from Oliver Kowalke
- coroutine - Coroutine library, from Oliver Kowalke
- coroutine2 - Coroutine2 library (C++14), from Oliver Kowalke
- interprocess - Shared memory, memory mapped files, process-shared mutexes, condition variables, containers and allocators, from Ion Gaztañaga
- lockfree - Lockfree data structures, from Tim Blechmann
- MPI - Message Passing Interface library, for use in distributed-memory parallel application programming, from Douglas Gregor and Matthias Troyer.
- thread - Portable C++ multi-threading, from William Kempf, Anthony Williams and Vicente J. Botet Escribá.

### Containers

- array - STL compliant container wrapper for arrays of constant size, from Nicolai Josuttis.
- bimap - Bidirectional maps, from Matias Capeletto.
- circular_buffer - STL compliant container also known as ring or cyclic buffer, from Jan Gaspar.
- container - Standard library containers and extensions, from Ion Gaztañaga
- dynamic_bitset - A runtime sized version of `std::bitset` from Jeremy Siek and Chuck Allison.
- gil - Generic Image Library, from Lubomir Bourdev and Hailin Jin.
- graph - Generic graph components and algorithms, from Jeremy Siek and a University of Notre Dame team; now maintained by Andrew Sutton and Jeremiah Willcock.
- icl - Interval Container Library, interval sets and maps and aggregation of associated values, from Joachim Faulhaber.
- intrusive - Intrusive containers and algorithms, from Ion Gaztañaga
- multi_array - Multidimensional containers and adaptors for arrays of contiguous data, from Ron Garcia.
- multi_index - Containers with multiple STL-compatible access interfaces, from Joaquín M López Muñoz.
- pointer container - Containers for storing heap-allocated polymorphic objects to ease OO-programming, from Thorsten Ottosen.
- property map - Concepts defining interfaces which map key objects to value objects, from Jeremy Siek.
- property tree - A tree data structure especially suited to storing configuration data, from Marcin Kalicinski and Sebastian Redl.
- unordered - unordered associative containers, from Daniel James.
- variant - Safe, generic, stack-based discriminated union container, from Eric Friedman and Itay Maman.

### Correctness and testing

- assert - Customizable assert macros, from Peter Dimov.
- concept check - Tools for generic programming, from Jeremy Siek.
- static_assert - Static assertions (compile time assertions), from John Maddock.
- test - Support for simple program testing, full unit testing, and for program execution monitoring, from Gennadiy Rozental.

### Data structures

- any - Safe, generic container for single values of different value types, from Kevlin Henney.
- bimap - Bidirectional maps, from Matias Capeletto.
- container - Standard library containers and extensions, from Ion Gaztañaga
- compressed_pair - Empty member optimization, from John Maddock, Howard Hinnant, et al.
- fusion - Library for working with tuples, including various containers, algorithms, etc. From Joel de Guzman and Dan Marsden and Tobias Schwinger.
- icl - Interval Container Library, interval sets and maps and aggregation of associated values, from Joachim Faulhaber.
- intrusive - Intrusive containers and algorithms, from Ion Gaztañaga
- heap - Priority queue data structures, from Tim Blechmann
- multi_index - Containers with multiple STL-compatible access interfaces, from Joaquín M López Muñoz.
- optional - Discriminated-union wrapper for optional values, from Fernando Cacciola.
- pointer container - Containers for storing heap-allocated polymorphic objects to ease OO-programming, from Thorsten Ottosen.
- polygon - Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates, from Lucanus Simonson, Andrii Sydorchuk.
- property tree - A tree data structure especially suited to storing configuration data, from Marcin Kalicinski and Sebastian Redl.
- tribool - 3-state boolean type library, from Doug Gregor.
- tuple - Ease definition of functions returning multiple values, and more, from Jaakko Järvi.
- variant - Safe, generic, stack-based discriminated union container, from Eric Friedman and Itay Maman.
- type_erasure - Runtime polymorphism based on concepts, from Steven Watanabe.

### Domain Specific

- chrono - Useful time utilities, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá.
- crc - Cyclic Redundancy Code, from Daryle Walker.
- date_time - Date-Time library from Jeff Garland.
- units - Zero-overhead dimensional analysis and unit/quantity manipulation and conversion, from Matthias Schabel and Steven Watanabe.
- uuid - A universally unique identifier, from Andy Tompkins.

### Function Objects and Higher-order Programming

- bind and mem_fn - Generalized binders for function/object/pointers and member functions, from Peter Dimov.
- function - Function object wrappers for deferred calls or callbacks, from Doug Gregor.
- functional - Enhanced function object adaptors, from Mark Rodgers.
- functional/factory - function object templates for dynamic and static object creation, from Tobias Schwinger
- functional/forward - adapters to allow generic function objects to accept arbitrary arguments, from Tobias Schwinger
- functional/hash - A TR1 hash function object that can be extended to hash user defined types, from Daniel James.
- functional/overloaded_function - Overload different functions into a single function object, from Lorenzo Caminiti.
- lambda - Define small unnamed function objects at the actual call site, and more, from Jaakko Järvi and Gary Powell.
- local_function - Program functions locally, within other functions, directly within the scope where they are needed, from Lorenzo Caminiti.
- Phoenix - Define small unnamed function objects at the actual call site, and more, from Joel de Guzman, Dan Marsden and Thomas Heller
- ref - A utility library for passing references to generic functions, from Jaako Järvi, Peter Dimov, Doug Gregor, and Dave Abrahams.
- signals (deprecated) - managed signals & slots callback implementation, from Doug Gregor.
- signals2 - managed signals & slots callback implementation (thread-safe version 2), from Frank Mori Hess.
- result_of - determines the type of a function call expression.

### Generic Programming

- call_traits - Defines types for passing parameters, from John Maddock, Howard Hinnant, et al.
- concept check - Tools for generic programming, from Jeremy Siek.
- enable_if - Selective inclusion of function template overloads, from Jaakko Järvi, Jeremiah Willcock, and Andrew Lumsdaine.
- function_types - Type traits for callable, built-in types, from Tobias Schwinger
- gil - Generic Image Library, from Lubomir Bourdev and Hailin Jin.
- in_place_factory, typed_in_place_factory- Generic in-place construction of contained objects with a variadic argument-list, from Fernando Cacciola.
- operators - Templates ease arithmetic classes and iterators, from Dave Abrahams and Jeremy Siek.
- property map - Concepts defining interfaces which map key objects to value objects, from Jeremy Siek.
- static_assert - Static assertions (compile time assertions), from John Maddock.
- tti - Type Traits Introspection library, from Edward Diener
- type_traits - Templates for fundamental properties of types, from John Maddock, Steve Cleary, et al.

### Image Processing

- gil - Generic Image Library, from Lubomir Bourdev and Hailin Jin.

### Input/Output

- asio - Portable networking and other low-level I/O, including sockets, timers, hostname resolution, socket iostreams, serial ports, file descriptors and Windows HANDLEs, from Chris Kohlhoff.
- assign - Filling containers with constant or generated data has never been easier, from Thorsten Ottosen.
- endian - Types and conversion functions for correct byte ordering and more regardless of processor endianness, from Beman Dawes
- format - Type-safe 'printf-like' format operations, from Samuel Krempp.
- io state savers - Save I/O state to prevent jumbled data, from Daryle Walker.
- iostreams - Framework for defining streams, stream buffers and i/o filters, from Jonathan Turkanis.
- locale - Provide localization and Unicode handling tools for C++, from Artyom Beilis
- program_options - Access to configuration data given on command line, in config files and other sources, from Vladimir Prus.
- serialization - Serialization of arbitrary data for persistence and marshalling, from Robert Ramey

### Inter-language Support

- python - Reflects C++ classes and functions into Python, from Dave Abrahams.

### Iterators

- gil - Generic Image Library, from Lubomir Bourdev and Hailin Jin.
- graph - Generic graph components and algorithms, from Jeremy Siek and a University of Notre Dame team; now maintained by Andrew Sutton and Jeremiah Willcock.
- iterator - Iterator construction framework, adaptors, concepts, and more, from Dave Abrahams, Jeremy Siek, and Thomas Witt.
- operators - Templates ease arithmetic classes and iterators, from Dave Abrahams and Jeremy Siek.
- tokenizer - Break of a string or other character sequence into a series of tokens, from John Bandela.

### Language Features Emulation

- exception - A library for transporting of arbitrary data in exception objects, and transporting of exceptions between threads (N2179), from Emil Dotchevski.
- foreach - BOOST_FOREACH macro for easily iterating over the elements of a sequence, from Eric Niebler.
- move - Portable move semantics for C++03 and C++1 compilers, from Ion Gaztañaga
- parameter - Write functions that accept arguments by name, by David Abrahams and Daniel Wallin.
- scope_exit - Execute arbitrary code at scope exit, from Alexander Nasonov and Lorenzo Caminiti.
- typeof - Typeof operator emulation, from Arkadiy Vertleyb and Peder Holt.
- type_index - Runtime/Compile time copyable type info, from Antony Polukhin.

### Memory

- align - Memory alignment functions, allocators, and adaptors, from Glen Fernandes.
- pool - Memory pool management, from Steve Cleary.
- smart_ptr - Six smart pointer class templates, from Greg Colvin, Beman Dawes, Peter Dimov, Darin Adler, and Glen Fernandes.
- utility - Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom, from Dave Abrahams and others.

### Math and Numerics

- accumulators - Framework for incremental calculation, and collection of statistical accumulators, from Eric Niebler.
- endian - Types and conversion functions for correct byte ordering and more regardless of processor endianness, from Beman Dawes
- geometry - Geometry Library, from Barend Gehrels, Bruno Lalande and Mateusz Loskot.
- integer - Headers to ease dealing with integral types.
- interval - Extends the usual arithmetic functions to mathematical intervals, from Guillaume Melquiond, Hervé Brönnimann and Sylvain Pion.
- math - Several contributions in the domain of mathematics, from various authors.
- math/complex number algorithms - These complex number algorithms are the inverses of trigonometric functions currently present in the C++ standard, from John Maddock.
- math/common_factor - Greatest common divisor and least common multiple, from Daryle Walker.
- math/octonion - Octonions, from Hubert Holin.
- math/quaternion - Quaternions, from Hubert Holin.
- 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
- math/constants - A wide range of numberic constants from John Maddock and Paul Bristow.
- math/floating point utilities - Floating point manipulation utilities from Johan Rade.
- multi_array - Multidimensional containers and adaptors for arrays of contiguous data, from Ron Garcia.
- multiprecision - Extended precision arithmetic types for floating point, integer and rational arithmetic from John Maddock and Christopher Kormanyos.
- numeric/conversion - Optimized Policy-based Numeric Conversions, from Fernando
- odeint - Solving ordinary differential equations, from Karsten Ahnert and Mario Mulansky.
- operators - Templates ease arithmetic classes and iterators, from Dave Abrahams and Jeremy Siek.
- polygon - Voronoi diagram construction and booleans/clipping, resizing/offsetting and more for planar polygons with integral coordinates, from Lucanus Simonson, Andrii Sydorchuk.
- random - A complete system for random number generation, from Jens Maurer.
- ratio - A compile time ratio arithmetic, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá.
- rational - A rational number class, from Paul Moore.
- uBLAS - Basic linear algebra for dense, packed and sparse matrices, from Joerg Walter and Mathias Koch.

### Template Metaprogramming

- function_types - Type traits for callable, built-in types, from Tobias Schwinger
- fusion - Library for working with tuples, including various containers, algorithms, etc. From Joel de Guzman, Dan Marsden and Tobias Schwinger.
- mpl - Template metaprogramming framework of compile-time algorithms, sequences and metafunction classes, from Aleksey Gurtovoy.
- proto - Expression template library and compiler construction toolkit for domain-specific embedded languages, from Eric Niebler.
- ratio - A compile time ratio arithmetic, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá.
- static_assert - Static assertions (compile time assertions), from John Maddock.
- tti - Type Traits Introspection library, from Edward Diener
- type_traits - Templates for fundamental properties of types, from John Maddock, Steve Cleary, et al.

### Patterns and Idioms

- flyweight - Design pattern to manage large quantities of highly redundant objects, from Joaquín M López Muñoz.
- signals (deprecated) - managed signals & slots callback implementation, from Doug Gregor.
- signals2 - managed signals & slots callback implementation (thread-safe version 2), from Frank Mori Hess.
- utility base-from-member idiom, from Dave Abrahams and others.
- compressed_pair - Empty member optimization, from John Maddock, Howard Hinnant, et al.

### State Machines

- meta state machine - High-performance expressive UML 2.0 finite state machines, from Christophe Henry.
- statechart - Arbitrarily complex finite state machines can be implemented in easily readable and maintainable C++ code, from Andreas Huber.

### Parsing

- spirit - LL parser framework represents parsers directly as EBNF grammars in inlined C++, from Joel de Guzman, Hartmut Kaiser, Dan Nuffer and team.

### Preprocessor Metaprogramming

- identity_type - Wrap types within round parenthesis so they can always be passed as macro parameters, from Lorenzo Caminiti.
- preprocessor - Preprocessor metaprogramming tools including repetition and recursion, from Vesa Karvonen and Paul Mensonides.
- VMD - Variadic Macro Data library, from Edward Diener.

### Programming Interfaces

- function - Function object wrappers for deferred calls or callbacks, from Doug Gregor.
- parameter - Write functions that accept arguments by name, by David Abrahams and Daniel Wallin.

### String and Text Processing

- convert - An extendible and configurable type-conversion framework, from Vladimir Batov
- format - Type-safe 'printf-like' format operations, from Samuel Krempp.
- iostreams - Framework for defining streams, stream buffers and i/o filters, from Jonathan Turkanis.
- lexical_cast - `lexical_cast` class template, from Kevlin Henney.
- locale - Provide localization and Unicode handling tools for C++, from Artyom Beilis
- regex - Regular expression library, from John Maddock
- spirit - LL parser framework represents parsers directly as EBNF grammars in inlined C++, from Joel de Guzman, Hartmut Kaiser, Dan Nuffer and team.
- string_algo - String algorithms library, from Pavol Droba
- tokenizer - Break of a string or other character sequence into a series of tokens, from John Bandela
- wave - Standards conformant implementation of the mandated C99/C++ preprocessor functionality packed behind an easy to use iterator interface, from Hartmut Kaiser.
- xpressive - 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.

### System

- chrono - Useful time utilities, from Howard Hinnant, Beman Dawes, Vicente J. Botet Escribá.
- context - Context switching library, from Oliver Kowalke
- date_time - Date-Time library from Jeff Garland.
- filesystem - Portable paths, iteration over directories, and other useful filesystem operations, from Beman Dawes.
- system - Operating system support, including the diagnostics support that will be part of the C++0x standard library, from Beman Dawes.
- thread - Portable C++ multi-threading, from William Kempf, Anthony Williams and Vicente J. Botet Escribá.

### Miscellaneous

- conversion - Polymorphic casts, from Dave Abrahams and Kevlin Henney.
- core - A collection of simple core utilities with minimal dependencies, maintained by Peter Dimov, Glen Fernandes, and Andrey Semashev.
- endian - Types and conversion functions for correct byte ordering and more regardless of processor endianness, from Beman Dawes
- numeric/conversion - Optimized Policy-based Numeric Conversions, from Fernando Cacciola.
- Predef - This library defines a set of compiler, architecture, operating system, library, and other version numbers from the information it can gather of C, C++, Objective C, and Objective C++ predefined macros or those defined in generally available headers, from Rene Rivera.
- swap - Enhanced generic swap function, from Joseph Gauterin.
- timer - Event timer, progress timer, and progress display classes, from Beman Dawes.
- TR1 - An implementation of the Technical Report on C++ Library Extensions, using other Boost libraries as a basis, from John Maddock.
- throw_exception - Common infrastructure for throwing exceptions, from Emil Dotchevski.
- utility - Class noncopyable plus checked_delete(), checked_array_delete(), next(), prior() function templates, plus base-from-member idiom, from Dave Abrahams and others.
- value_initialized - Wrapper for uniform-syntax value initialization, from Fernando Cacciola, based on the original idea of David Abrahams.

[Category suggestions from Aleksey Gurtovoy, Beman Dawes and Vicente J. Botet Escribá]

## Libraries Retired from Boost

- compose - Functional composition adapters for the STL, from Nicolai Josuttis. Removed in Boost version 1.32. Please use Bind or Lambda instead.

Revised 19 Feb 2015

© Copyright Beman Dawes 2000-2004

Distributed under the Boost Software License, Version 1.0. (See file LICENSE_1_0.txt or www.boost.org/LICENSE_1_0.txt)