Subject: Re: [boost] [generic] status?
From: Dave Abrahams (dave_at_[hidden])
Date: 2012-05-06 08:55:42
on Sat May 05 2012, lcaminiti <lorcaminiti-AT-gmail.com> wrote:
> Hello all,
> What's the status of Matt Calabrese's Boost.Generic library?
Whom are you asking? I wouldn't wait around for Matt to answer; sadly, I
haven't seen him around the list in months.
> I was looking at the similarities between Boost.Generic and Boost.Contract
> syntax, and I think the following syntax can be implemented to define
> concepts, concepts_maps, axioms, etc
> concept (Iterator) ( typename X ) extends( Semiregular<X> )
> typename(MoveConstructible) reference, as typename X::reference ,
> typename(MoveConstructible) postinc_result ,
> requires HasDereference<postinc_result> ,
> (reference) operator(*)(deref) ( X& ) ,
> (reference) operator(*)(deref) ( X&& ) ,
> (X&) operator(++)(preinc) ( X& ) ,
> (postinc_result) operator(++)(postinc) ( X&, int )
It looks beautiful to me!
> More examples here (auto concepts, concept maps, axioms, etc):
Even more so!
> If there was real interest using this syntax to define concepts, either the
> syntax could replace the on of Boost.Generic or Boost.Contract could provide
> the syntax and then use Boost.Generic behind the scene to actually define
> the concepts (same as Boost.Contract now does for Boost.Parameter).
> What do you think?
I want this yesterday. When can we review it?
-- Dave Abrahams BoostPro Computing http://www.boostpro.com