Pregunta

¿Hay explicaciones "simples" de lo procsos y lambda están en Ruby?

¿Fue útil?

Solución

Lambdas (que existen en otros idiomas también) son como funciones ad hoc, creado sólo para un uso sencillo en lugar de realizar algunas acciones complejas.

Cuando se utiliza un método como Array#collect que toma un bloque en {}, básicamente estás creando un lambda / proc / bloque de sólo el uso de ese método.

a = [1, 2, 3, 4]
# Using a proc that returns its argument squared
# Array#collect runs the block for each item in the array.
a.collect {|n| n**2 } # => [1, 4, 9, 16]
sq = lambda {|n| n**2 } # Storing the lambda to use it later...
sq.call 4 # => 16

funciones anónimas en Wikipedia, y algunos other SO preguntas para los matices de lambda vs Proc .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top