Cursus Raku / Functioneel, concurrent, reactief en webprogrammeren / Functioneel programmeren / Lambda’s en closures / Exercises / Een accumulator
Oplossing: Een accumulator
Hier is een mogelijke oplossing voor de taak.
Code
sub make-accumulator {
my $sum = 0;
return -> $x { $sum += $x };
}
my &acc = make-accumulator;
acc(10);
say acc(5);🦋 Je kunt de broncode vinden in het bestand accumulator.raku.
Uitvoer
15Opmerkingen
De closure legt
$sumvast, die tussen aanroepen blijft bestaan.acc(10)maakt de som10;acc(5)telt er vijf bij op en geeft15terug.
Cursusnavigatie
← Een accumulator | Reductie →