title: List reversing in Ocaml
body: <p>How to reverse even sublists of a list if we assume that we count elements from 0. I want the solution to be "manually-coded". I've got a big problem with this task. </p>
  
  <p>For example:</p>
  
  <pre><code>Function([[1;2;3] ; [2;3] ; [1;2;3] ; [5;6;7]])
  </code></pre>
  
  <p>returns:</p>
  
  <pre><code>([[3;2;1] ; [2;3] ; [3;2;1] ; [5;6;7]])
  </code></pre>
  
  <p>I already created a function that reverse a single list:</p>
  
  <pre><code>let rev =
    let rec rev_append acc l =
      match l with
        [] -&gt; acc
      | h::t -&gt; rev_append (h::acc) t in
    fun l -&gt; rev_append [] l;;
  </code></pre>
  
  <p>But now i am stuck. </p>