|
Boost : |
From: Gennadiy Rozental (gennadiy.rozental_at_[hidden])
Date: 2004-11-21 23:12:03
> > 1. parameter type enforcing
>
> Check. You provide a simpler and less-capable interface. Of course
> it would be easy to add a simple and less-capable interface on top of
> our general one.
Could you please ground you statement about "less-capable". With specific
examples.
If you mean something amoung the lines "is_movable" check. Look at my
responce here:
http://lists.boost.org/MailArchives/boost/msg75147.php
> > 2. default value support
>
> Details, please? Please show the differences (I've clearly lost track
> of this thread).
template<typename Params>
void foo( Params const& p )
{
you interface
int ind = p[index | 0 ];
my interface
int ind = p.has(index) ? p[index] : 0;
}
> > 3. option parameter support
optional actually. Sorry
>
> Details, please?
>From other thread:
> > void foo_impl( int i1, int i2 ) {...}
> > void foo_impl( int i1 ) {...}
> >
> > template<typename Params>
> > void foo( Params const& p ) {
> > if( p.has(i2) )
> > foo_impl( p[i1], p[i2] );
> > else
> > foo_impl( p[i1] );
> > }
> > 4. Unlimited number of parameters support
>
> If I understand what you're saying, no you don't.
Why? I could have as many parameters to function as I want since I do not
try to combine under the hood of single keywords structure.
> Don't forget, we have the overloaded comma operator.
Don't you still need to use keywords structure? Doesn't it has limited
arity? If you don't, which features wouldn't be accessible (without keywords
structure)?
> If I don't understand what you're saying: details, please?
>
> --
> Dave Abrahams
Regards,
Gennadiy
Boost list run by bdawes at acm.org, gregod at cs.rpi.edu, cpdaniel at pacbell.net, john at johnmaddock.co.uk