Curso de Raku / Programación funcional, concurrente, reactiva y web / Programación funcional / Funciones de orden superior / Exercises / Cree un multiplicador
Solución: Cree un multiplicador
Aquí tienes una posible solución para la tarea.
Código
sub multiplier($n) {
sub ($x) { $x * $n };
}
my &double = multiplier(2);
my &triple = multiplier(3);
say double(7);
say triple(7);🦋 Puedes encontrar el código fuente en el archivo make-multiplier.raku.
Salida
14
21Comentarios
multiplier(2)devuelve una subrutina que recuerda que$nes2;multiplier(3)devuelve una subrutina distinta que recuerda3.Cada subrutina devuelta conserva su propio
$n, así quedouble(7)da14ytriple(7)da21: dos funciones independientes construidas desde la misma fábrica.