Курс Raku / Розширені / Модулі / Інтроспекція модулів / Вправи / Перелічити символи
Розв’язання: Перелічити символи
Ось один із можливих варіантів розв’язання задачі.
Код
Програма list.raku:
use Circle;
say Circle::.keys.elems;
say Circle::.keys.sort;🦋 Обидва файли з вихідним кодом можна знайти в каталозі exercises/advanced/module-introspection/list-the-symbols.
Вивід
$ raku -I. list.raku
2
($pi $tau)Коментарі
Circle::є пакунком модуля, а.keysперелічує імена, які він містить, кожне разом із сигілом..elemsрахує ці імена — модуль визначає дві змінніour, тож кількість дорівнює2..keysне гарантує жодного конкретного порядку, тож ми застосовуємо.sort, щоб отримати стабільний алфавітний результат($pi $tau). Без сортування два імені могли б виходити то в одному, то в іншому порядку між запусками.