Boost logo

Boost :

From: David Abrahams (david.abrahams_at_[hidden])
Date: 2002-07-20 13:40:41


----- Original Message -----
From: "Ron Garcia" <garcia_at_[hidden]>
To: <boost_at_[hidden]>
Sent: Saturday, July 20, 2002 2:16 PM
Subject: Re: [boost] Formal Review: Template Metaprogramming Library (MPL)

> Aleksey Gurtovoy wrote:
>
> >Ron Garcia wrote:
> >
> >
> >>- Abstract: What's a function class? The abstract should avoid
> >>ambiguous terminology.
> >>
> >>
> >It's not ambiguous, it's unknown :). But in any case it should actually
read
> >as "metafunction classes": "...an extensible compile-time framework of
> >algorithms, sequences and metafunction classes." Is it better?
> >

> I think "metafunctions" is adequate, but "metafunction classes" seems
> fine as well.

Those are separate concepts. A simple C++ metafunction looks like this:

template <class T>
struct func {
   typedef ... type;
};

a metafunction class looks like this:

struct func
{
    template <class T>
    struct apply {
        typedef ... type;
    };
};

-Dave


Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk