Перейти к содержимому
IMOEX 2209.84 0.8%
·Технологии·1 августа 2026 г.

Делаем себе сложно

Делаем себе сложно

В пакете стандартной библиотеки slices есть функция Backward — итератор по элементам среза в обратном порядке:

func Backward[Slice ~[]E, E any](s Slice) iter.Seq2[int, E]

Если вы не сильно погружены в тему дженериков и итераторов, то естественная реакция при взгляде на сигнатуру этой функции (и других из пакета slices) — «а что, нельзя попроще как-то было?».

Чтобы ответить на этот вопрос, проведем воображаемый эксперимент. Представим себя в роли нашего далекого предка, живущего в доитераторную эпоху, который решает реализовать Backward с нуля.

Сомнительно, но окэй →

Это отрывок статьи. Полную версию читайте на сайте источника по ссылке ниже.

Источник: Habr