Курс языка программирования Raku / Функциональное, конкурентное, реактивное и веб-программирование / Функциональное программирование
Функции высшего порядка
В Raku подпрограмма — обычное значение: её можно сохранить в переменной, передать другой подпрограмме и вернуть как результат. Подпрограмму, которая принимает или возвращает другую подпрограмму, называют функцией высшего порядка, и она — сердце функционального программирования.
Вы уже пользовались функциями высшего порядка, не называя их так:
map, grep и sort — все они
принимают блок кода в качестве аргумента. В этом разделе показано, как
писать собственные.
Эти принимающие блок методы — ещё и естественное место для формы
вызова с двоеточием, которая позволяет обойтись без скобок:
(1..10).grep: * %% 2 вместо
(1..10).grep(* %% 2). Она вводится в теме Вызов с двоеточием, а используемое в
ней сокращение * — это звезда Whatever.
Темы этого раздела
Практика
Пройдите 2 теста по содержанию этого раздела.
Упражнения
В этом разделе 3 упражнения. Прежде чем приступать к практике, изучите все темы раздела.