Corso di Raku / Programmazione funzionale, concorrente, reattiva e web / Programmazione concorrente / Promise / Exercises / Concatenate una promise
Soluzione: Concatenate una promise
Ecco una possibile soluzione del compito.
Codice
my $p = start { 'raku' };
my $q = $p.then({ .result.uc });
my $r = $q.then({ .result ~ '!' });
say await $r;🦋 Trova il programma nel file promise-result.raku.
Output
RAKU!Commenti
Ogni
.thencostruisce una nuova promise che gira una volta finita la precedente. Dentro il suo blocco,.resultè il valore prodotto dalla promise precedente.Il primo seguito rende
'raku'maiuscolo in'RAKU'; il secondo aggiunge'!'. Attendere l’ultima promise,$r, percorre tutta la catena e produce'RAKU!'— una piccola pipeline in cui ogni passo trasforma il risultato del passo precedente.