Size: a a a

2020 July 29

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Я так понял, чтобы показать на «живом примере»
источник

VM

Vladimir Manatskov in Moscow Python
А статья про питон или про dry-python?
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Хм…
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
dry-python как «форк» питона
источник

VM

Vladimir Manatskov in Moscow Python
Потому что начинается она как крепкая статья про питон, а потом внезапно: "а теперь лёгким движением руки поставим ряд зависимостей, которые нам пригодятся", и бац — получается троллейбус из хлебушка
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Да не, я как раз на это вообще ничего не имею. Чуть более реальный, чем сферический в вакууме, конь вышел
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Могли и не использовать зависимостей, но код вышел бы более теоретическим
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Не факт, что это плохо. Но мне кажется, задумка именно такая.
источник

НХ

Николай Хитров... in Moscow Python
Andrey 🦉 Kovalchuk
Мне нравится сама идея: сделать инструмент, чтобы было проще (без потери надежности) писать. И я пытаюсь понять, чем это проще. И не могу. Я, наверное, молоденький просто
для всяких api библиотек, которым надо уметь в async и sync, такой подход уменьшил бы дублирование кода. другое дело, что далеко не все сообщество одобряет подходы из мира фп в мире питона)
источник

AS

Alexey Starkov in Moscow Python
Vladimir Manatskov
Не, конечно, это дичь, что в Питоне появились "красные" и "синие" функции, так асинк делать нельзя, но вопрос: при чём тут вот это вообще?

Сначала поставим зависимости, чтобы получить воспроизводимый пример.

pip install returns httpx anyio
а в чем проблема красных/синих функций? как по другому реализовать _кооперативную многозадачность в едином треде_?
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Николай Хитров
для всяких api библиотек, которым надо уметь в async и sync, такой подход уменьшил бы дублирование кода. другое дело, что далеко не все сообщество одобряет подходы из мира фп в мире питона)
Но в примере мы имеем полное дублирование + красно-синяя функция, нет?
источник

НХ

Николай Хитров... in Moscow Python
Andrey 🦉 Kovalchuk
Но в примере мы имеем полное дублирование + красно-синяя функция, нет?
а где там дублирование?
источник

VM

Vladimir Manatskov in Moscow Python
Alexey Starkov
а в чем проблема красных/синих функций? как по другому реализовать _кооперативную многозадачность в едином треде_?
это не моя проблема как разработчика на языке питон. я хочу тупо вызывать одни функции из других
источник

p

pragus in Moscow Python
Alexey Starkov
а в чем проблема красных/синих функций? как по другому реализовать _кооперативную многозадачность в едином треде_?
gevent ;)
источник

AS

Alexey Starkov in Moscow Python
Vladimir Manatskov
это не моя проблема как разработчика на языке питон. я хочу тупо вызывать одни функции из других
а в чем проблема не использовать асинк тогда?
источник

VM

Vladimir Manatskov in Moscow Python
Alexey Starkov
а в чем проблема не использовать асинк тогда?
А почему бы не сделать асинк сразу правильно?
источник

AS

Alexey Starkov in Moscow Python
Vladimir Manatskov
А почему бы не сделать асинк сразу правильно?
это как? как gevent?
источник

AK

Andrey 🦉 Kovalchuk... in Moscow Python
Николай Хитров
а где там дублирование?
А, как раз, видимо не так понял.

т.е. эта хурма не подразумевает кода внутри себя? Только красно-синяя что-то делает, остальные - просто типа интерфейсы?

@overload

def fetch_resource_size(

   client_get: Callable[[str], IOResultE[httpx.Response]],

   url: str,

) -> IOResultE[int]:

   """Sync case."""
источник

НХ

Николай Хитров... in Moscow Python
вот одна реализация и 2 способа использования. дублирования нет
источник

VM

Vladimir Manatskov in Moscow Python
Alexey Starkov
это как? как gevent?
я хз, я не член комитета пайтон
источник