Size: a a a

Programming Offtop

2021 May 15

VB

V B in Programming Offtop
Так было и так будет. Умение прочитать бутылочную этикетку наводнило мир латентными графоманами, но не писателями.
Программирование гонят той же
дорогой: от искусства вроде каллиграфии через конвейер к всеобщему навыку. Но мы даже не на середине. Нужно ещё лет 150 и пара хороших встрясок.
источник

AN

Alexander Nozik in Programming Offtop
Разбор Наки про спутник: https://youtu.be/dzkYkmz1WJ8
источник

KD

Konstantin Dovnar in Programming Offtop
Такой вопрос имеется. Есть вот всеми известный Either.

У него почти всегда добавляют прекрасный метод catch, который просто оборачивает вызов функции в try/catch и отдает либо успешный Right, либо Left с ошибкой. Всё круто.

Но как лучше поступать, если функция которую хочется передать в этот метод должна работать с асинхронным кодом?

Каких-то catchAsync я не видел, видимо это принято решать  как-то иначе?
источник

AN

Alexander Nozik in Programming Offtop
Какой асинхронный код? Хаскель же, все лениво.
источник

KD

Konstantin Dovnar in Programming Offtop
Це хаскель, но свой Either уже в какие языки только не засунули.
источник

AN

Alexander Nozik in Programming Offtop
Шутка была. Не написано, про какой язык речь
источник

AN

Alexander Nozik in Programming Offtop
если это котлин, не страдайте ерундой, там уже Result это делает и он как раз в асинхронных вызовах используется
источник

ch

central hardware in Programming Offtop
если меня  разбудят  через сто лет и спросят что творится в pofftop, я отвечу срач на тему ФП
источник

KD

Konstantin Dovnar in Programming Offtop
Вообще речь про dart, но подойдёт любой умеющий в Future`\`Promise.
источник

AD

Apache DOG™ in Programming Offtop
IO[Either [E,T]]
источник

AN

Alexander Nozik in Programming Offtop
Где тут ФП?
источник

AN

Alexander Nozik in Programming Offtop
Ну или так, да.
источник

AD

Apache DOG™ in Programming Offtop
ZIO имеет этот функционал из коробки
источник

KD

Konstantin Dovnar in Programming Offtop
Result != Either.
Мне не во всех кейсах нужно обрабатывать именно ошибки.
источник

AN

Alexander Nozik in Programming Offtop
Так у вас какая-то дарт-специфичная асинхронщина. Судя по всему что-то типа Future<Either> доложно быть. В переводе на дартовский
источник

KD

Konstantin Dovnar in Programming Offtop
Хм. Мне казалось у дарта очень близкая к JS'у система.
источник

AN

Alexander Nozik in Programming Offtop
Ну просто смысл в том, что у вас должен быть промис/футур и в нем Either
источник

AN

Alexander Nozik in Programming Offtop
Конкретно в JS отдельно передается обработчик результата и отдельно ошибки
источник

KD

Konstantin Dovnar in Programming Offtop
Да.
Я к такому и пришёл, делая некий Either.catchAsync, но как выделил в первом сообщении — не встречал такого подхода, что намекнуло мне, что это не правильно.
источник

VB

V B in Programming Offtop
Да уж, активный отдых. 😥
источник