Add method to Range
class Range def each_slow x = self.begin while x <= self.end yield x x = x.succ end end end (1..3).each_slow {|x| puts x} # 1 # 2 # 3