module Hamster::List

def each

def each
  return self unless block_given?
  list = self
  until list.empty?
    yield(list.head)
    list = list.tail
  end
end