index.html 4.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778
  1. <?xml version="1.0" encoding="utf-8" ?>
  2. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
  4. <!-- Copyright Aleksey Gurtovoy 2006. Distributed under the Boost -->
  5. <!-- Software License, Version 1.0. (See accompanying -->
  6. <!-- file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt) -->
  7. <head>
  8. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  9. <meta name="generator" content="Docutils 0.3.6: http://docutils.sourceforge.net/" />
  10. <title>THE BOOST MPL LIBRARY</title>
  11. <meta name="copyright" content="Copyright © Aleksey Gurtovoy and David Abrahams, 2002-2004." />
  12. <link rel="stylesheet" href="style.css" type="text/css" />
  13. </head>
  14. <body class="docframe">
  15. <a class="reference" href="http://www.boost.org" target="_top">
  16. <img align="left" alt="www.boost.org" src="../../../boost.png"/>
  17. </a>
  18. <h1 class="title">THE BOOST MPL LIBRARY</h1>
  19. <table class="docinfo" frame="void" rules="none">
  20. <col class="docinfo-name" />
  21. <col class="docinfo-content" />
  22. <tbody valign="top">
  23. <tr><th class="docinfo-name">Copyright:</th>
  24. <td>Copyright © Aleksey Gurtovoy and David Abrahams, 2002-2004.</td></tr>
  25. <tr class="field"><th class="docinfo-name">License:</th><td class="field-body">Distributed under the Boost Software License, Version 1.0. (See
  26. accompanying file <tt class="literal"><span class="pre">LICENSE_1_0.txt</span></tt> or copy at
  27. <a class="reference" href="http://www.boost.org/LICENSE_1_0.txt" target="_top">http://www.boost.org/LICENSE_1_0.txt</a>)</td>
  28. </tr>
  29. </tbody>
  30. </table>
  31. <div class="document" id="the-boost-mpl-library">
  32. <p>The Boost.MPL library is a general-purpose, high-level C++
  33. template metaprogramming framework of compile-time algorithms, sequences and
  34. metafunctions. It provides a conceptual foundation and an extensive
  35. set of powerful and coherent tools that make doing explict metaprogramming
  36. in C++ as easy and enjoyable as possible within the current language.</p>
  37. <p>There are several places to start when getting familiar with the library,
  38. depending on what you know about metaprogramming in general and
  39. C++ template metaprogramming in particular. Starting with
  40. Boost version 1.32, the MPL comes with both an <a class="reference" href="./tutorial/tutorial-metafunctions.html">in-depth tutorial</a> on its
  41. fundamental concepts and an annotated <a class="reference" href="./tutorial/reference-manual.html">reference manual</a> covering all concepts
  42. and components in the library. While the tutorial
  43. only uncovers a bit of what there is to C++ metaprogramming and the MPL,
  44. it's a perfect place to start if you are only somewhat familiar with the
  45. subject. At the very least, after you're done with it, you will be able to put
  46. the rest of the stuff that appears here into context. The reference manual
  47. is <em>the</em> resource for you if you plan — or are already doing — some actual
  48. development with the library, but a casual reading is still allowed and likely
  49. to bring many insights on the framework's organization and underlying
  50. ideas. Finally, the top-level sections in this document that you
  51. see highlighted below might also offer something of interest.</p>
  52. <p>So, welcome, and happy metaprogramming!</p>
  53. <dl>
  54. <dt><strong>Important</strong>:</dt>
  55. <dd>There have been some major interface changes in the library since the last
  56. public release, many of which are <em>not</em> backward compatible. If you are
  57. a seasoned MPL user, be prepared to have to modify your code after
  58. upgrading. Please refer to the <a class="reference" href="./tutorial/changes-in-boost-1-32-0.html">1.32 release changelog</a>
  59. for the detailed information about the changes.</dd>
  60. </dl>
  61. <!-- .. section-numbering:: -->
  62. <ul class="toc simple" id="outline">
  63. <li><a class="reference" href="./tutorial/tutorial-metafunctions.html" id="id40" name="id40">Tutorial: Metafunctions and Higher-Order Metaprogramming</a></li>
  64. <li><a class="reference" href="./tutorial/reference-manual.html" id="id61" name="id61">Reference Manual</a></li>
  65. <li><a class="reference" href="./tutorial/changelog-history.html" id="id62" name="id62">Changelog &amp; History</a></li>
  66. <li><a class="reference" href="./tutorial/technical-details.html" id="id70" name="id70">Technical Details</a></li>
  67. <li><a class="reference" href="./tutorial/resources.html" id="id77" name="id77">Resources</a></li>
  68. <li><a class="reference" href="./tutorial/acknowledgements.html" id="id78" name="id78">Acknowledgements</a></li>
  69. <li><a class="reference" href="./tutorial/tutorial_toc.html">Full TOC</a></li>
  70. </ul>
  71. </div>
  72. <hr class="footer" />
  73. <div class="footer">
  74. Generated on: 2004-11-15 12:20 UTC.
  75. Generated by <a class="reference" href="http://docutils.sourceforge.net/" target="_top">Docutils</a> from <a class="reference" href="http://docutils.sourceforge.net/rst.html" target="_top">reStructuredText</a> source.
  76. </div>
  77. </body>
  78. </html>