Курс по Raku / Функционално, паралелно, реактивно и уеб програмиране / Функционално програмиране / Функции от по-висок ред / Exercises / Приложете два пъти
Решение: Приложете два пъти
Ето едно възможно решение на задачата.
Код
sub twice(&f, $x) {
f(f($x));
}
say twice(* * 3, 2);🦋 Намерете програмата във файла apply-twice.raku.
Изход
18Коментари
Параметърът
&fполучава подпрограма; вътрешнотоf($x)се подава на външнотоf(...).Утрояването на
2дава6, а още едно утрояване дава18.