Changes between Version 149 and Version 150 of LibrariesUnderConstruction


Ignore:
Timestamp:
May 24, 2011, 4:38:12 PM (11 years ago)
Author:
viboes
Comment:

Added Generic & TypeErasure

Legend:

Unmodified
Added
Removed
Modified
  • LibrariesUnderConstruction

    v149 v150  
    142142 * '''State:''' On going
    143143 * '''Last upload:''' 2010 October 10
    144  * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/auto_function Boost Sandbox]
    145  * '''Categories:'''  [#Utilities Utilities]
    146  * '''Description:''' "auto function" macro that uses trailing return type
    147 syntax with decltype with 1-liner functions that automatically repeats the
    148 same expression in both the return type and the return statement.
     144 * '''Links:''' [http://svn.boost.org/svn/boost/sandbox/auto_function Boost Sandbox] [http://www.rivorus.com/auto_function Documentation]
     145 * '''Categories:'''  [#Utilities Utilities]  [#GenericProgramming Generic Programming]
     146 * '''Description:''' Boost.Auto_Function is a library focused on making it simple for programmers to express functions and function declarations that have an automatically deduced return type and to provide a way to place arbitrary compile-time requirements on a function's signature.
    149147
    150148---------------------------------------------------------------------------------------------------
     
    462460 * '''Categories:''' [#Containers Containers] [#InputOutput Input/Output]
    463461 * '''Description:''' Boost.Explore is a library that provides for the output of data from containers or ranges.
     462
     463
     464---------------------------------------------------------------------------------------------------
     465== Boost.Generic ==
     466 * '''Author(s):''' Matt Callabrese
     467 * '''Version:'''
     468 * '''State:'''
     469 * '''Last upload:'''2008 Mars 22
     470 * '''Links:''' [http://github.com/boostcon/2011_presentations/raw/master/thu/Boost.Generic.pdfPresentation]
     471 * '''Categories:''' [#GenericProgramming Generic Programming]
     472 * '''Description:''' Boost.Generic (not a part of boost) is a C++0x library intended to replace BCCL as a way of specifying concepts and concept maps as close as possible to the withdraw C++0x Concepts.
    464473
    465474---------------------------------------------------------------------------------------------------
     
    10791088 * '''Description:''' TR2 Proposal text: [http://www.open-std.org/jtc1/sc22/wg21/docs/papers/2006/n2101.html Tree Structures and Related Concepts for the C++ Standard Library (TR2)]
    10801089
     1090---------------------------------------------------------------------------------------------------
     1091== Boost.TypeErasure ==
     1092 * '''Author(s):''' Steven Watanabe
     1093 * '''Version:'''
     1094 * '''State:'''
     1095 * '''Last upload:'''2011 Mai 22
     1096 * '''Links:''' [http://www.boostpro.com/vault/index.php?action=downloadfile&filename=type_erasure.zip&directory=& Boost Vault]
     1097 * '''Categories:''' [#GenericProgramming Generic Programming]
     1098 * '''Description:''' C++ provides runtime polymorphism through virtual functions. They are a very useful feature, but they do have some limitations.
     1099
     1100    * They are intrusive. In generic programming, we can design an interface which allows third-party types to be adapted to it.
     1101    * They require dynamic memory management. Of course, most of the problems can be avoided by using an appropriate smart pointer type. Even so, it still acts like a pointer rather than a value.
     1102    * Virtual functions' ability to apply multiple independent concepts to a single object is limited.
     1103
     1104The Boost.TypeErasure library solves these problems allowing us to mirror static generic programming at runtime.
     1105
    10811106
    10821107---------------------------------------------------------------------------------------------------