# File lib/facet/enumerable/each_slice.rb, line 15
  def each_slice(step=nil, &yld)
    if step
      cnt = step
      n = length / cnt
      n += 1 if length % cnt > 0
      n.times { |i|
        yld.call(*self.slice(i*cnt,cnt))
      }
      return cnt
    else
      cnt = yld.arity.abs
      n = length / cnt
      n += 1 if length % cnt > 0
      n.times { |i|
        yld.call(*self.slice(i*cnt,cnt))
      }
      return cnt
    end  
  end