Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione funzionale / Funzioni di ordine superiore / Restituire subroutine
Quiz — Funzioni di ordine superiore
Cosa stampa il programma seguente?
sub prefixer($p) {
sub ($s) { $p ~ $s };
}
my &hi = prefixer('Hi, ');
say hi('Bob');| 1 | Hi, Bob |
| 0 | Bob |
| 0 | Hi, |
| 0 | Hi, Hi, |
prefixer('Hi, ') restituisce una subroutine che ricorda
il prefisso e lo antepone a qualunque cosa le venga data. Conservata in
&hi e chiamata con 'Bob', restituisce
Hi, Bob — una subroutine restituita funziona con le
stringhe altrettanto bene che con i numeri.