Size: a a a

F# Flood: ПДД made functional, making illegal state INGIBDDdale

2020 May 13

DS

Doge Shibu in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Shub Niggurath
видишь ли, комизм ситуации в том, что конкретно эта кодобаза застряла на уровне F# 3.5, поэтому племенное знание - это что Choice на самом деле Result. и в связи с этим я хочу поинтересоваться: какой больной ублюдок придумал использовать Result<a,a>?
Ну в процессе преобразований (за счёт mapr) получают Result<a,a>, ну а дальше нужна функция, чтобы достать оттуда единственное значение.

Нормальные люди её называют fromResult, см:
https://hoogle.haskell.org/?hoogle=Either%20a%20a%20-%3E%20a%20

У вас решили выпендреться
источник

оГ

отец Григорий... in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Shub Niggurath
видишь ли, комизм ситуации в том, что конкретно эта кодобаза застряла на уровне F# 3.5, поэтому племенное знание - это что Choice на самом деле Result. и в связи с этим я хочу поинтересоваться: какой больной ублюдок придумал использовать Result<a,a>?
а внутри a - код ошибки? :)
источник

IC

Iλyα Che in F# Flood: ПДД made functional, making illegal state INGIBDDdale
источник

SN

Shub Niggurath in F# Flood: ПДД made functional, making illegal state INGIBDDdale
отец Григорий
а внутри a - код ошибки? :)
ну если он в обоих веточках находится, то как он может быть кодом ошибки?
источник

IC

Iλyα Che in F# Flood: ПДД made functional, making illegal state INGIBDDdale
О, кажется, я понял, какую проблему пытаются решить линзы. Хороший документик.
источник

SN

Shub Niggurath in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Doge Shibu
Ну в процессе преобразований (за счёт mapr) получают Result<a,a>, ну а дальше нужна функция, чтобы достать оттуда единственное значение.

Нормальные люди её называют fromResult, см:
https://hoogle.haskell.org/?hoogle=Either%20a%20a%20-%3E%20a%20

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

оГ

отец Григорий... in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Shub Niggurath
ну если он в обоих веточках находится, то как он может быть кодом ошибки?
| Error ({ Oshibka = x }) -> ...
источник

КП

Крылатый Пегас... in F# Flood: ПДД made functional, making illegal state INGIBDDdale
отец Григорий
| Error ({ Oshibka = x }) -> ...
У меня перманентные флешбеки от таких названий
источник

оГ

отец Григорий... in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Крылатый Пегас
У меня перманентные флешбеки от таких названий
уретрирую
источник

КП

Крылатый Пегас... in F# Flood: ПДД made functional, making illegal state INGIBDDdale
отец Григорий
уретрирую
Пожалуйста, только не при всех.
источник

DS

Doge Shibu in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Shub Niggurath
это какое- то шизотипическое мышление, ты не находишь?
Ну идея была сделать что-то вроде unwrap_or_else в том же расте, как бы идея здравая, но реализация так себе.
источник

DS

Doge Shibu in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Как минимум надо было в отдельную функцию выделить вот это mapr |> codiag и назвать её приличнее.
источник

DB

Denis Bobrov in F# Flood: ПДД made functional, making illegal state INGIBDDdale
member unwrapOrElse с AutoOpen и вперед
источник

DB

Denis Bobrov in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Как с крышкой делают
источник

Dv

Dr. Friedrich von Ne... in F# Flood: ПДД made functional, making illegal state INGIBDDdale
источник

IC

Iλyα Che in F# Flood: ПДД made functional, making illegal state INGIBDDdale
You follow through the code to see all places that third argument is used and realize the accepted type of the third argument depends on what you give to the second argument.

А зачем так делать?
источник

VP

Vasiliy Pereverzev in F# Flood: ПДД made functional, making illegal state INGIBDDdale
там графон показывают
источник

IC

Iλyα Che in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Iλyα Che
You follow through the code to see all places that third argument is used and realize the accepted type of the third argument depends on what you give to the second argument.

А зачем так делать?
Это ж выстрел в ногу почти гарантированный.
источник

VP

Vasiliy Pereverzev in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Epic Games анонсировала Unreal Engine 5 и показала длинное демо на движке, которое работает на PS5.

Первая полноценная демонстрация возможностей консолей нового поколения.

https://dtf.ru/hard/135122
источник

SN

Shub Niggurath in F# Flood: ПДД made functional, making illegal state INGIBDDdale
Doge Shibu
Ну идея была сделать что-то вроде unwrap_or_else в том же расте, как бы идея здравая, но реализация так себе.
я не сильно понимаю, почему это может быть здравая идея. Result<>  традиционно используется, чтобы заэнкодить два разных состояния, каждое из которых может быть детализировано (DU для успешных операций, DU для неуспешных) и явно зафорсить два разных обработчика для обеих видов возврата. если кому-то нужно только значение из Result - зачем заворачивать возврат в Result?
источник