Entonces, tengo curiosidad sobre cómo Ruby es un lenguaje completamente orientado a objetos. Me tropiezo con un problema que no es muy claro para mí.¿Cómo está Ruby completamente orientado a objetos?
Si defino una función de la siguiente manera
def foo(text)
print text
end
y defino la función fuera de una clase, ¿cómo es esta función un objeto? Me doy cuenta de que puedo llamar al
foo.class
Y obtengo NilClass. ¿Esto significa que foo es una instancia de NilClass? Y si lo es, ¿qué significa exactamente cuando llamo
foo "hello world"
Si foo es un objeto, el método que estoy llamando cuando hago la declaración que el anterior. Además, si un objeto, ¿significa que puedo modificarlo y añadir otro método a la misma (por ejemplo bar) en el que podía posiblemente hacer la siguiente DECLARACIÓN:
foo.bar(some variables)
Lo siento, estoy un poco confundido en este punto. Cualquier aclaración es muy apreciada! ¡Gracias!
posible duplicado de [Métodos en Ruby: ¿objetos o no?] (Http://stackoverflow.com/questions/2602340/methods-in-ruby-objects-or-not) – OscarRyz