def each_chunk(number, &block)
      raise Erlang::ImproperListError if improper?
      return enum_for(:each_chunk, number) unless block_given?
      chunk(number).each(&block)
      return self
    end
def each_chunk(number, &block)
      raise Erlang::ImproperListError if improper?
      return enum_for(:each_chunk, number) unless block_given?
      chunk(number).each(&block)
      return self
    end
Split the items in this list in groups of `number`, and yield each group
 to the block (as a `List`). If no block is given, returns an
 `Enumerator`.

 @return [self, Enumerator]
 @yield [list] Once for each chunk.