¿Hay algunas explicaciones “simples” de lo que se procsos y lambdas en Ruby?
-
20-09-2019 - |
Pregunta
¿Hay explicaciones "simples" de lo procsos y lambda están en Ruby?
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