
On 8/20/2011 7:36 PM, Joel de Guzman wrote:
On 8/20/2011 5:41 AM, Eric Niebler wrote: <snip>
Of course, single-stepping through a joint_view isn't necessarily the most common use scenario. These things will also be passed to fusion algorithms, which (if they are segment-aware) may in fact compile /faster/ if joint_view is segmented (unconfirmed). :-/
Regardless, it seems I need to improve the compile time of incrementing and comparing generic segmented iterators.
That is interesting. If single-stepping through a joint_view isn't necessarily the most common use scenario, do you think invoke can be implemented another way?
I think it could be done with variadic templates, but I'm not saying invoke's implementation needs to change.
AFAICT, invoke is a real world use-case.
No doubt!
Perhaps we should be thinking more in terms of algorithm composition from primitives such as fold, but the very notion of 'iterators' suggest (and we c++ folks take it as norm), that we iterate through the elements in a step-wise manner (unless I misunderstood what you mean by "single-stepping").
Single-stepping though a joint_view is an important use case, and it needs to be well-supported. No argument. Which is why I'd like to find and fix the perf problem in segmented_iterator, or else leave joint_view_iterator alone. -- Eric Niebler BoostPro Computing http://www.boostpro.com