Raku-Kurs / Funktionale, nebenläufige, reaktive und Web-Programmierung / Funktionale Programmierung / Lambdas und Closures / Exercises / Ein Akkumulator

Lösung: Ein Akkumulator

Hier ist eine mögliche Lösung der Aufgabe.

Code

sub make-accumulator {
    my $sum = 0;
    return -> $x { $sum += $x };
}

my &acc = make-accumulator;
acc(10);
say acc(5);

🦋 Du findest den Quellcode in der Datei accumulator.raku.

Ausgabe

15

Kommentare

  1. Die Closure fängt $sum ein, die zwischen den Aufrufen bestehen bleibt.

  2. acc(10) macht die Summe 10; acc(5) addiert fünf und liefert 15.

Kursnavigation

Ein Akkumulator   |   Reduktion