
David Abrahams skrev:
Hi Neil,
I'm sure someone already spoke to you about this, but just in case: Andrei Alexandrescu gave a very interesting presentation at BoostCon that was based on a "ranges only" approach that should eliminate issues like this one:
Of the issues that it does seem to solve are the following: - begin and end iterator does not need to be the same (because there is not two iterators) - simpler specification, better error messages (iterators are somewhat painfull) This has a some irritating implications, like forcing us to store two predicates etc. I haven't done any benchmarking to see how much this is actually a problem. However, I donøt think RangeEx should try to do this design. That's a job for Boost.RangeExEx, or some GSOC project. Also note that with the new C++0x features, we should be able to handle that the begin and end iterator are different types. -Thorsten