Boost logo

Boost :

Subject: Re: [boost] [fusion] Any chance we can incorporate more folds?
From: Steven Watanabe (watanabesj_at_[hidden])
Date: 2010-08-20 17:21:57


David Sankel wrote:
> I've implemented, in particular, foldr1:
> template<
> typename Sequence,
> typename State,
> typename F
> typename result_of::foldr1<Sequence, F>::type foldr1(
> Sequence& seq, F const& f);
> Semantics:
> Equivalent to f(....f(f(e1,e2),e3)...) where e1 ...eN are the elements
> of seq.
> It is very useful for fusion sequences of possibly distinct types that have
> identical concepts which can be merged in some way (like generators).
> I very much like the folds that are included in Haskell's prelude, namely
> foldl, foldl1, foldr (somewhat like boost's fold), and foldr1[1].

We already have reverse_fold, which makes 2/4.

In Christ,
Steven Watanabe

Boost list run by bdawes at, gregod at, cpdaniel at, john at