5000 Elefantes (Ruby)

Version no muy legible en Ruby de la cancion infantil.  Ruby se distingue por ser, generalmente, facil de leer y entender.  Que este codigo no sea muy legible es culpa mia, solamente.  Ruby es inocente.


#!/usr/bin/env ruby

# muchosmuchosmuchos elefantes
# jon tohrs
# send me money -_-

def fants(n)
 n == 1 ? "#{n} elefante" : "#{n} elefantes"
end

def cmp(n)
 n == 1 ? "columpiaba" : "columpiaban"
end

def vrn(n)
 n == 1 ? "veia " : "veian "
end

def ir(n)
 n == 1 ? "fue" : "fueron"
end

@count = 0

@count.upto(4999) {
@count = @count + 1
 
puts <<ELEFANTEISHON
#{fants(@count)}
se #{cmp(@count)}
sobre la tela
de una araña
como #{vrn(@count)}
que resistia
#{ir(@count)} a llamar
a otro elefante...
--
ELEFANTEISHON
}
puts "y asi hasta el infinito..."