Курс по Raku / Функционално, паралелно, реактивно и уеб програмиране / Функционално програмиране

Итератори

Предишният раздел строеше последователности с gather и take. Този слиза едно ниво по-надолу — до механизма, който всъщност доставя стойностите: итератора.

Итераторът е малкият обект, който стои зад всеки списък, диапазон и мързелива последователност в Raku. Той умее едно-единствено нещо — да произведе следващата стойност — и нищо повече. Всеки път, когато пишете цикъл for или извиквате map, Raku тихо иска от итератор по една стойност наведнъж, докато не свършат. Този раздел показва този протокол направо: как да теглите стойности от итератор на ръка и как да напишете свой собствен итератор.

Теми в този раздел

Практика

Направете 1 тест върху съдържанието на този раздел.

Упражнения

Този раздел съдържа 1 упражнение. Разгледайте всички теми в раздела, преди да се захванете с практиката.

  1. Сума чрез pull-one

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

Решение: Събиране с условие   |   Протоколът на итераторите