code: function make_foldable(folder) {
    return function(xs) {
             return { fold: default_folder }
  
             function default_folder(initial, step, done) {
               done = done || identity
               folder(xs, initial, step, done) }}}
docs: /// Function make_foldable ///////////////////////////////////////////////////  Constructs a ``Foldable`` out of a folding process.  make-foldable :: Coll a => (a, b, Stepper, Done -> ()) -> a -> Foldable a