Курс по Raku / Функционално, паралелно, реактивно и уеб програмиране / Функционално програмиране / Функции от по-висок ред / Exercises / Приложете два пъти

Решение: Приложете два пъти

Ето едно възможно решение на задачата.

Код

sub twice(&f, $x) {
    f(f($x));
}

say twice(* * 3, 2);

🦋 Намерете програмата във файла apply-twice.raku.

Изход

18

Коментари

  1. Параметърът &f получава подпрограма; вътрешното f($x) се подава на външното f(...).

  2. Утрояването на 2 дава 6, а още едно утрояване дава 18.

Навигация в курса

Приложете два пъти   |   Създайте умножител