<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>
      Development of C++ Standard C++ Library Technical Report no. 1
    </title>
    <base href="http://www.open-std.org/jtc1/sc22/wg21/docs/papers/" />
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <style type="text/css">
      /* <![CDATA[*/
        address {text-align: right}
        tr.BASIC { background:white}
        tr.ALTERNATE { background: #ffffcc}
        tr.TITLE_ROW {height: 26pt; text-align: center; font-weight: bold }
      /* ]]> */
    </style>
  </head>
  <body>
    <address>
      Document number: N2364=07-224<br />
      <br />
      <a href="mailto:public@alisdairm.net">Alisdair Meredith</a><br />
      2007-07-27
    </address>
    
    <hr />
    
    <h1>Development of C++ Standard C++ Library Technical Report no. 1</h1>
    
    <p>
    This paper presents a quick summary of all papers submitted to WG21 in the
    development of the first C++ Standard Library Technical Report.  It is
    intended to document the history of the proposals, and to capture their
    rationale.
    </p>
    <p>
    All papers are incorporated into the last draught of Library Technical
    Report 1, <a href="2005/n1836.pdf">N1836</a>.
    </p>
    
    <hr />
    
    <h2> Key to the tables</h2>

    Papers have been grouped in a self-selecting manner as either new
    components or updates. Proposals for new components have a series of
    papers describing thier evolution, and only the right-most paper is
    relevant (and the one applied to the working paper by committee vote.)
    The 'update' papers are grouped according to the feature they are
    updating, and mostly apply updates to the component papers after
    acceptance into the working paper.
    <br />

    <table cellspacing="0" cellpadding="0" border="0">
      <tbody>
      
        <tr class="TITLE_ROW">
          <td>WG21 Number(s)</td>
          <td>Title</td>
          <td>Authors</td>
        </tr>
        <tr class="TITLE_ROW">
          <td colspan="3">New Library Components in TR1</td>
        </tr>
        <tr>
          <td colspan="3">
            Proposals for new library features for the Technical Report.
          </td>
        </tr>

        <tr class="BASIC">
          <td>
            <a href="2001/n1326.html">N1326</a>
            <a href="2002/n1399.html">N1399</a>
            <a href="2003/n1443.html">N1443</a>
            <a href="2003/n1456.html">N1456</a>
          </td>
          <td> A Proposal to Add Hashtables to the Standard Library</td>
          <td> Matt Austern</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2002/n1345.html">N1345</a>
            <a href="2003/n1424.htm">N1424</a>
          </td>
          <td> A Proposal to add Type Traits to the Standard Library</td>
          <td> John Maddock</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2002/n1354.htm">N1354</a>
            <a href="2002/n1372.htm">N1372</a>
            <a href="2003/n1503.htm">N1503</a>
            <a href="2004/n1568.htm">N1568</a>
          </td>
          <td> Proposed C99 Library Additions to C++</td>
          <td> P.J. Plauger</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2002/n1375.html">N1375</a>
            <a href="2002/n1402.html">N1402</a>
          </td>
          <td>
            A Proposal to add a Polymorphic Function Object Wrapper to the
            Standard Library
          </td>
          <td> Doug Gregor</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1437.html">N1437</a>
            <a href="2003/n1454.html">N1454</a>
          </td>
          <td>
            A uniform method for computing function object return types
          </td>
          <td> Douglas Gregor</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2002/n1382.pdf">N1382</a>
            <a href="2002/n1403.pdf">N1403</a>
          </td>
          <td> Proposal for adding tuple type into the standard library</td>
          <td> Jaakko Järvi</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2002/n1386.htm">N1386</a>
            <a href="2003/n1429.htm">N1429</a>
          </td>
          <td>
            A Proposal to add Regular Expression to the Standard Library
          </td>
          <td> John Maddock</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2002/n1398.html">N1398</a>
            <a href="2003/n1452.html">N1452</a>
          </td>
          <td>
            A Proposal to Add an Extensible Random Number Facility to the
            Standard Library
          </td>
          <td> Jens Maurer</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1422.html">N1422</a>
            <a href="2003/n1514.pdf">N1514</a>
            <a href="2003/n1542.pdf">N1542</a>
          </td>
          <td>
            A Proposal to Add Mathematical Special Functions to the C++
            Standard Library
          </td>
          <td> Walter E. Brown</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1502.htm">N1502</a>
          </td>
          <td>
            Proposed Signature Changes for Special Math Functions in TR-1
          </td>
          <td> P.J. Plauger</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1431.htm">N1431</a>
            <a href="2003/n1450.html">N1450</a>
          </td>
          <td>
            A Proposal to Add General Purpose Smart Pointers to the Library
            Technical Report
          </td>
          <td> P. Dimov, B. Dawes, G. Colvin</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1436.html">N1436</a>
            <a href="2003/n1453.html">N1453</a>
          </td>
          <td>
            A proposal to add a reference wrapper to the standard library
          </td>
          <td> Doug Gregor, Peter Dimov</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1432.htm">N1432</a>
          </td>
          <td>
            A Proposal to Add an Enhanced Member Pointer Adaptor to the
            Library Technical Report
          </td>
          <td> Peter Dimov</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1438.htm">N1438</a>
            <a href="2003/n1455.htm">N1455</a>
          </td>
          <td>
            A Proposal to Add an Enhanced Binder to the Library Technical
            Report
          </td>
          <td> P. Dimov, D. Gregor, J. Järvi, G. Powell</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1479.html">N1479</a>
            <a href="2003/n1548.htm">N1548</a>
          </td>
          <td>
            A Proposal to Add a Fixed Size Array Wrapper to the Standard
            Library Technical Report
          </td>
          <td> Alisdair Meredith</td>
        </tr>


        <tr class="TITLE_ROW">
          <td colspan="3">Updates Adopted during TR1</td>
        </tr>
        <tr>
          <td colspan="3">
            Updates to libraries after they were voted into the Technical
            Report.
          </td>
        </tr>

        <tr class="BASIC">
          <td>
            <a href="2003/n1549.pdf">N1549</a>
          </td>
          <td> Const correctness in unordered associative containers	</td>
          <td> Matt Austern</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1622.html">N1622</a>
          </td>
          <td> Resolutions to unordered associative container issues	</td>
          <td> Matt Austern</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1508.htm">N1508</a>
          </td>
          <td>
            Proposal to add Deletion Traits to the Standard Library
            <i>only has_virtual_destructor accepted</i>
          </td>
          <td> Bronek Kozicki</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1519.htm">N1519</a>
          </td>
          <td> Type Traits Issue List</td>
          <td> John Maddock</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2004/n1713.pdf">N1713</a>
          </td>
          <td> Proposed Resolution to TR1 Issues 3.12, 3.14, and 3.15</td>
          <td> Pete Becker</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1667.pdf">N1667</a>
          </td>
          <td> Accessing the target of a tr1::function object</td>
          <td> Douglas Gregor</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1673.html">N1673</a>
          </td>
          <td> Unifying TR1 Function Object Type Specifications</td>
          <td> P. Becker,P. Dimov</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1499.html">N1499</a>
          </td>
          <td> Simplifying Interfaces in basic_regex	</td>
          <td> Pete Becker</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1500.html">N1500</a>
          </td>
          <td>
            Regular Expressions: Internationalization and Customization
          </td>
          <td> Pete Becker</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1507.html">N1507</a>
          </td>
          <td> Errata to the Regular Expression Proposal	</td>
          <td> John Maddock</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1551.htm">N1551</a>
          </td>
          <td> Changes to N1540 to Implement N1499 Parts 1 and 2</td>
          <td> Pete Becker</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2004/n1623.html">N1623</a>
          </td>
          <td> Resolutions to regular expression issues</td>
          <td> Matt Austern</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1535.html">N1535</a>
          </td>
          <td> Random Number Generators Issues List	</td>
          <td> Pete Becker</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1544.html">N1544</a>
          </td>
          <td> Comments about Issues with Random Number Generators</td>
          <td> Jens Maurer</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1547.htm">N1547</a>
          </td>
          <td> Comments on the Initialization of Random Engines</td>
          <td> Marc Paterno</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1609.html">N1609</a>
          </td>
          <td>
            More on Issues with Random Number Generators in the Library TR
            Proposal
          </td>
          <td> Jens Maurer</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1621.html">N1621</a>
          </td>
          <td> Resolution to TR issue 4.37</td>
          <td> Jens Maurer</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2004/n1570.htm">N1570</a>
          </td>
          <td>
            Corrections to domain-error reporting for TR1 chapter on special
            math functions
          </td>
          <td> P.J. Plauger</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2004/n1665.pdf">N1665</a>
          </td>
          <td>
            Guidelines for Domain Errors in Mathematical Special Functions
          </td>
          <td> J. Marraffino,M. Paterno</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2004/n1697.html">N1697</a>
          </td>
          <td>
            Restrictions on Order Parameters for Bessels and Other Function
            Families
          </td>
          <td> P.J. Plauger</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2005/n1884.htm">N1884</a>
          </td>
          <td> Further Restrictions on Special Math Functions</td>
          <td> P.J. Plauger, C. Walker</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1590.html">N1590</a>
          </td>
          <td> Smart Pointer Comparison Operators</td>
          <td> Peter Dimov</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2004/n1624.html">N1624</a>
          </td>
          <td> Resolutions to fixed-size array issues</td>
          <td> Matt Austern</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2004/n1723.html">N1723</a>
          </td>
          <td> Proposed Resolutions to Library TR Issues	</td>
          <td> Matt Austern</td>
        </tr>


        <tr class="TITLE_ROW">
          <td colspan="3">Proposals Removed from TR1</td>
        </tr>
        <tr>
          <td colspan="3">
            While these proposals were actively considered for TR1, and at one
            point included in the working draught, they were ultimately taken
            out as 'not ready'.  It is expected that much of this material
            will be presented in another form for future standards work.
          </td>
        </tr>

        <tr class="BASIC">
          <td>
            <a href="2003/n1476.html">N1476</a>
            <a href="2003/n1530.html">N1530</a>
            <a href="2004/n1641.html">N1641</a>
          </td>
          <td> Iterator Facade and Adaptor</td>
          <td> D. Abrahams, J. Siek, T. Witt</td>
        </tr>
        <tr class="ALTERNATE">
          <td>
            <a href="2003/n1477.html">N1477</a>
            <a href="2003/n1531.html">N1531</a>
            <a href="2003/n1550.htm">N1550</a>
            <a href="2004/n1640.html">N1640</a>
          </td>
          <td> New Iterator Concepts</td>
          <td> D. Abrahams, J. Siek, T. Witt</td>
        </tr>
        <tr class="BASIC">
          <td>
            <a href="2003/n1558.html">N1558</a>
            <a href="2004/n1575.html">N1575</a>
          </td>
          <td> Library Technical Report Component Detection</td>
          <td> Beman Dawes</td>
        </tr>
      </tbody>
    </table>
  </body>
</html>
