The libraries are aimed at a wide range of C++ users and application domains. They range from general-purpose libraries like the
smart pointer library, to
operating system abstractions like
Boost FileSystem, to libraries primarily aimed at other library developers and advanced C++ users, like the
template metaprogramming (MPL) and
domain-specific language (DSL) creation (Proto). In order to ensure efficiency and flexibility, Boost makes extensive use of
templates. Boost has been a source of extensive work and research into
generic programming and
metaprogramming in C++. Most Boost libraries are
header based, consisting of
inline functions and templates, and as such do not need to be built in advance of their use. Some Boost libraries coexist as independent libraries. Some Boost libraries, such as boost.regex, are offered as
modules, as the rest of the library begins to support modules. == Associated people ==