Курс Raku / Розширені / Підпрограми / Анонімні підпрограми / Вправи / Анонімний квадрат

Розв’язання: Анонімний квадрат

Ось можливий розв’язок завдання.

Код

say (1, 2, 3).map(sub ($x) { $x * $x });

🦋 Ви можете знайти вихідний код у файлі anonymous-square.raku.

Вивід

(1 4 9)

Коментарі

  1. sub ($x) { $x * $x } не має імені й не зберігається у змінній — вона передається прямо в map як аргумент.

  2. map застосовує її до кожного елемента 1, 2, 3, піднісши їх до квадрата і отримавши (1 4 9). Передача анонімної підпрограми безпосередньо таким чином — найпоширеніша причина для їх написання.

Навігація курсом

Анонімний квадрат   |   Сума з сигілом &