Buenos días,
Me presento, mi nombre es Marcelo Giorgi proveniente del mundo Java y todas
esas hierbas. Pero estoy tratando de ampliar mis horizontes y en ese
contexto soy un newbbie en Ruby. Pq Ruby ? Bueno principalmente porque tengo
un amigo, Diego Algorta, que me introdujo en este maravilloso mundo ;).
Ahora estoy leyendo "Programming Ruby - The Pragmatic Programmers' Guide 2nd
Ed." y me encontré con dificultades con el tema de los bloques de
ejecución...
Básicamente la duda surge por el ejemplo del libro, sobre este tema, en
lugar de aclarar, oscurece:
def meth2(&b)
b
end
res = meth2 { return }
res.call
produces:
prog.rb:5: unexpected return (LocalJumpError)
from prog.rb:5:in `call'
from prog.rb:6
Acá no me queda claro lo que sucede en este ejemplo...porque es que el
bloque pierde el contexto en este caso ? y si eso tiene algo q ver con que
"return" no esta asignado a ningún valor...
Además relacionado con esto, no me queda clara la diferencia entre definir
un bloque con Proc.new y lambda...
Si alguien puede iluminarme un poco en alguno de estos sentidos será
bienvenido ;)
Saludos y gracias,
Marcelo
_______________________________________________
Ruby mailing list
[email protected]
http://lista.rubyargentina.com.ar/listinfo.cgi/ruby-rubyargentina.com.ar