Boost logo

Boost :

Subject: Re: [boost] [mini-review] Update of Boost.Assign (13th-19th of June)
From: er (erwann.rogard_at_[hidden])
Date: 2010-06-17 12:00:48


>> So overall, we have two sets of functions which differ quite
>> significantly in their interface and implementation. The question
>> perhaps, is if we want to leave them apart or merge the desirable
>> features into one.
>
> I'm not sure which two sets you're referring to. Is it the *ref* ones
> on the one hand and list_of on the other?
>
> John Bytheway

list_of(x),y ---> cref_csv(x,y)
list_of(x)(y) ---> cref_csv(x,y)
list_of(x).range( v ) ---> cref_csv(x) && v;

For this group of functionalities cref_csv is probably preferable, in
which case the value added of a hypothetical csv that forwards to
list_of() is small.

list_of() ---> cref_csv(T())
list_of(x,y) ---> cref_csv(T(x,y))

list_of(x).repeat(n,y) ---> NA
list_of(x).repeat(n,fun) ---> NA

For theses 2 groups of functions, list_of() has some advantage in terms
of reduced typing or simply cannot be replicated by the cref_xxx family
of functions.

Conversion and range comparison capabilities are almost the same. The
difference is that it's possible to do say cref_csv(a,b) !=
cref_csv(c,d), not list_of(a)(b) != list_of(c)(d) but, if deemed
necessary, it can be envisaged.


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