Boost logo

Boost :

From: David Abrahams (dave_at_[hidden])
Date: 2005-05-21 17:25:24


"Arkadiy Vertleyb" <vertleyb_at_[hidden]> writes:

> Hi Tobias,
>
> Thanks for the review.
>
> "Tobias Schwinger" <tschwinger_at_[hidden]> wrote
>
>> I don't like the '_TPL' suffix - I'ld prefer 'TEMPLATED' to be spelled
> out.
>
> I don't have strong feelings about our current spelling, but I am not sure
> if I am crasy about BOOST_TYPEOF_TEMPLATED either. When David suggested
> using mpl::identity<__typeof__(x)>::type to wrap native typeof, I thought we
> can get rid of the xxx_TPL macros altogether (which would be a preferable
> solution for me), but now I realize that "typename" is used twice in the
> macto expansion. Which means we may also need BOOST_LVALUE_TYPEOF_TPL (or
> analogous).

Naw... anything of the form

       metafunction1< metafunction2< ... >::type >::type

can be collapsed into

       metafunction3< ... >::type

where

      template <class T>
      struct metafunction3
        : metafunction1< typename metafunction2< T >::type >
      {};

So there should be no need for any _TPL suffixes.

> I need to give this a little more thought, and I also like to
> hear what other people think about naming.

Well, even "TEMPLATED" is not very descriptive ;-)

> We did some work with Aleksandr Nasonov to port the library to Intel
> 8.0, and we came pretty close -- only the exotic case
> "template<class T, Tn>" didn't work, and we proved to ourselves that
> this was because of the compiler bug. So I think Intel will be
> among first compilers to extend our support.

Did you submit a bug report to intel?

-- 
Dave Abrahams
Boost Consulting
www.boost-consulting.com

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