|
require 'date'
|
|
|
|
palindate = Enumerator.new do |yielder|
|
|
("2020"..).each do |y|
|
|
m, d = y.reverse.scan(/../) # let the Y10K kids handle 5 digit years
|
|
strings = [y, m, d]
|
|
yielder << strings.join("-") if Date.valid_date?( *strings.map( &:to_i ) )
|
|
end
|
|
end
|
|
|
|
puts palindate.take(15)
|