title: Creating the underscore reduce function from scratch
body: <p>I am working on creating my own callback functions and higher order function groups.  I am stuck on replicating the underscore reduce function or ._reduce function.  Can someone help me understand how it works underneath the hood it has been a few days for me and I am stumped.  Here is what I have so far.  Please understand I am not utilizing the underscore library, I am trying to replicate it so that I can further my understanding on higher order functions.  Thanks.</p>
  
  <pre><code>var reduce = function(collection, iterator, accumulator) {
  
      var iterator = function(startPoint, combiner){
        for(var i = 0; i &lt;combiner.length; i++){
          startPoint += combiner[i];
      }
      return iterator(accumulator, collection);
  }
  </code></pre>