Boost logo

Boost :

From: Jeremy Siek (jsiek_at_[hidden])
Date: 2001-01-02 10:41:20

On Sun, 31 Dec 2000, John E. Potter wrote:
jpotte> On Sun, 31 Dec 2000, Daryle Walker wrote:
jpotte> > Should we make an algorithm header, with algorithms not covered by the
jpotte> > standard C++ headers <algorithm> or <numerics>. I got the idea from both me
jpotte> > (in "") and Jeremy Siek (in "TokenIterator/") having
jpotte> > altered versions of the 'mismatch' algorithm as an implementation detail.
jpotte> > Both versions make the same type of change*, so maybe it can start a new
jpotte> > header.
jpotte> An algorithm library would be nice. Not sure that it should contain
jpotte> non-standard versions of the standard algorithms. One common desire
jpotte> is erase_if. It would require someone to take responsibility for it.

I also like the idea of an algorithm extension library.

jpotte> > * The problem with the standard 'mismatch' algorithm is that is assumes that
jpotte> > the second sequence is at least as long as the first sequence. If it is the
jpotte> > other way, you can switch the arguments, of course. However, sometimes you
jpotte> > have no way of knowing which sequence ends first (like the input stream
jpotte> > iterators). Comparing with an end element is still safe, so we made a
jpotte> > version of the algorithm that checks both sequences for their end before
jpotte> > proceeding.
jpotte> Maybe fixing the standard would be better than creating non-standard
jpotte> versions.

Well, fixing the standard is a more lengthy process. I think it would be
appropriate for us to go ahead and provide the "fixed" version in boost
until it makes it in.

jpotte> Back to algorithms. How about next/prev combination like those for
jpotte> permutations? Others? Maintainers?

Maintenance will probably be a group effort on this one...


 Jeremy Siek www:
 Ph.D. Candidate email: jsiek_at_[hidden]
 Univ. of Notre Dame work phone: (219) 631-3906

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