Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione funzionale / Funzioni di ordine superiore / Exercises / Create un moltiplicatore
Soluzione: Create un moltiplicatore
Ecco una possibile soluzione del compito.
Codice
sub multiplier($n) {
sub ($x) { $x * $n };
}
my &double = multiplier(2);
my &triple = multiplier(3);
say double(7);
say triple(7);🦋 Trova il programma nel file make-multiplier.raku.
Output
14
21Commenti
multiplier(2)restituisce una subroutine che ricorda che$nè2;multiplier(3)restituisce una subroutine separata che ricorda3.Ogni subroutine restituita conserva il proprio
$n, quindidouble(7)dà14etriple(7)dà21— due funzioni indipendenti costruite dalla stessa fabbrica.