#%D0%B8%D1%82%D0%B5%D1%80%D0%B0%D1%82%D0%BE%D1%80%D1%8B

2025-04-11

Что делает перечисления (enum) в Rust такими мощными?

На примерах попробую показать, почему enum в Rust это несколько больше, чем обычно принято считать. Рассмотрю расширенное использование enum в типовых ситуациях. Сразу забегая вперед скажу, что в рамках статьи я не затрагиваю паттерны и мэтчинг. Первое, что приходит в голову, когда речь заходит об enum , — это идея: «А давайте заменим все константы на enum ». :) Желание логичное, давайте на него посмотрим...

habr.com/ru/articles/899792/

#rust #enum #num_enum #перечисления #итераторы #repr #strum #try_from

2025-03-10

Под чешуёй асинхронности: from yield to await

В данной статье мы рассмотрим основы асинхронного программирования в python, фокусируясь на ключевых концепциях и их практическом применении. Мы начнем с изучения генераторов и итераторов — фундаментальных механизмов, лежащих в основе асинхронности python. Затем поговорим о потоках и процессах, чтобы понять, как они соотносятся с асинхронным подходом. Основная цель статьи — создание собственной упрощенной реализации asyncio, включая цикл событий, задачи и примитивы синхронизации. Это позволит глубже понять внутреннее устройство асинхронной разработки в python.

habr.com/ru/articles/889490/

#асинхронность #генераторы #итераторы #python #cpython #gaio #asyncio

2024-06-24

[Перевод] Почему итераторы в Go 1.23 многим так не нравятся

ПРИМЕЧАНИЕ: данный пост является адаптацией следующего твита (однако абсолютно самодостаточен): x.com/TheGingerBill/status/180 TL;DR язык Go сейчас воспринимается как слишком “функциональный”, а не столь беззастенчиво императивный язык. Недавно мне попался в твиттере пост, демонстрирующий, как будут устроены итераторы в Go 1.23 (эта версия выйдет в августе 2024 года). У меня складывается впечатление, будто многим в сообществе это нововведение не нравится. Я решил высказаться по этому поводу с точки зрения проектировщика языков. Объединённый пул-реквест по данному предложению находится здесь: github.com/golang/go/issues/61 В нём подробно и глубоко объяснено, почему при проектировании языка были приняты именно одни решения, а не другие, поэтому рекомендую вам его прочитать, если язык Go вам знаком. Вот пример из исходного твита, который я тогда нашёл:

habr.com/ru/articles/824018/

#Go #Golang #функциональное_программирование #структуры_данных #итераторы

2011-04-12

Все-таки синтаксис плюсовых итераторов ужасен чуть более чем. Все эти namespace::container<type>::iterator, пиздец да и только. Хорошие люди конечно придумали auto, но слишком поздно. #C++ #итераторы #синтаксис

Client Info

Server: https://mastodon.social
Version: 2025.04
Repository: https://github.com/cyevgeniy/lmst