Курс языка программирования Raku / Продвинутый уровень / Модули / Интроспекция модулей / Exercises / Список символов

Решение: Список символов

Вот одно из возможных решений задачи.

Код

Программа, 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)

Комментарии

  1. Circle:: — это пакет модуля, а .keys выводит список содержащихся в нём имён, каждое с сигилом.

  2. .elems подсчитывает эти имена — модуль определяет две переменные our, поэтому результат равен 2.

  3. .keys не гарантирует определённого порядка, поэтому мы применяем .sort для получения стабильного алфавитного результата ($pi $tau). Без сортировки два имени могут появиться в любом порядке при разных запусках.

Навигация по курсу

Список символов   |   Поиск символа