title: Reverse iteration in Julia
body: <p>Yesterday I had occasion to want to iterate over a collection in reverse order. I found the <code>reverse</code> function, but this does not return an iterator, but actually creates a reversed collection.</p>
  
  <p>Apparently, there used to be a <code>Reverse</code> iterator, which was <a href="https://github.com/JuliaLang/julia/issues/4590" rel="noreferrer">removed</a> several years ago. I can also find <a href="https://github.com/JuliaLang/julia/pull/6780" rel="noreferrer">reference</a> to something (a type?) called <code>Order.Reverse</code>, but that does not seem to apply to my question.</p>
  
  <p>The <a href="https://github.com/JuliaCollections/Iterators.jl" rel="noreferrer"><code>Iterators.jl</code></a> package has many interesting iteration patterns, but apparently not reverse iteration.</p>
  
  <p>I can of course use the <code>reverse</code> function, and in some cases, for example <code>reverse(eachindex(c))</code> which returnes a reversed iterator, but I would prefer a general reverse iterator.</p>
  
  <p>Is there such a thing?</p>