<html><head><meta http-equiv="Content-Type" content="text/html charset=iso-8859-1"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space;"><br><div><div>On Mar 4, 2014, at 2:51 PM, Sean Silva <<a href="mailto:silvas@purdue.edu">silvas@purdue.edu</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div dir="ltr"><br><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Mar 3, 2014 at 12:26 AM, Chris Lattner <span dir="ltr"><<a href="mailto:sabre@nondot.org" target="_blank">sabre@nondot.org</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class=""><br>
On Mar 2, 2014, at 8:53 PM, Renato Golin <<a href="mailto:renato.golin@linaro.org">renato.golin@linaro.org</a>> wrote:<br>
<br>
> On 3 March 2014 12:32, Pete Cooper <<a href="mailto:peter_cooper@apple.com">peter_cooper@apple.com</a>> wrote:<br>
>> Would those work with a foreach construct? Perhaps I forgot to mention that was what I'm trying to work out here.<br>
>><br>
>> In example 3 I was wondering if we could define a method reverse(). We could use sfinae to wrap that around rbegin/rend if people like that style?<br>
><br>
> Sorry, I was too terse... ;)<br>
><br>
> If MF is a reverse_iterator, it'd just work, no? But to get the<br>
> reverse iterator, I think reverse() would be the best general pattern,<br>
> since you can adapt it to each container needs.<br>
<br>
</div>I'm not aware of the prior art or standards are here, but I think that a global reverse() adapter is the way to go.  Likewise, we should have a standard "enumerate()" adaptor like python.<br></blockquote>
<div><br></div><div>`enumerate` is going to be so much more annoying to use without tuple unpacking in the `for` syntax :(</div></div></div></div></blockquote><br></div><div>Sure, it won't be as nice as Python, but in my limited experience with C++'11 foreach loops, the #1 reason I can't use them is because there is no way to parallel iterate two vectors (as a random example) which would be simple if an index were available.  It doesn't matter to me how syntactically convenient it is to get the index, so long as it is possible.</div><div><br></div><div>-Chris</div><br></body></html>