Курс по Raku / Функционално, паралелно, реактивно и уеб програмиране / Функционално програмиране / Функции от по-висок ред / Връщане на подпрограми
Тест — Функции от по-висок ред
Какво отпечатва следната програма?
sub prefixer($p) {
sub ($s) { $p ~ $s };
}
my &hi = prefixer('Hi, ');
say hi('Bob');| 1 | Hi, Bob |
| 0 | Bob |
| 0 | Hi, |
| 0 | Hi, Hi, |
prefixer('Hi, ') връща подпрограма, която помни
представката и я долепя пред каквото ѝ дадат. Съхранена в
&hi и извикана с 'Bob', тя връща
Hi, Bob — върнатата подпрограма работи също толкова добре с
низове, колкото и с числа.