Anonymous
в смысле? по return-типу лямбды копилятор сам допрет
Anonymous
че ты хочешь
Anonymous
но это такое - сомнительнео api, если честно. работать-то оно будет, но я в продакшине так не делаю. нехуй. указывайте типы руками и стардайте.
Anonymous
не хотите страдать - пишите пакеты на F#
Anonymous
и пользуйтесь благами nuget
Vasily
Anonymous
на этапе Then ты знаешь оба типа TLeft, TRight
Anonymous
ничего тебе не мешает закинуть туда новый new Builder<sting, int> например
Anonymous
IEither<TLeft, TRight>
Anonymous
IEither<TMappedLeft, TMappedRight> Then(...)
Anonymous
linq вообще не так делает, если что, но со стороны похоже, да
Anonymous
угу. либо на уровне типизации класса, либо локлаьно - на уровне метода Then<T, K>
Anonymous
ну сама реализация непростая, да. но это реализация
Anonymous
интерфейс более-менее
Anonymous
можно перегрузить
Anonymous
да все понятно, хули непонятного
Anonymous
просто API очень необычное
Anonymous
нужно будет F12 нажимать
Anonymous
и въебывать
Anonymous
что проиходит
Vasily
На галерах не поймут
Anonymous
так недалеко и до статических классов как коллега советовал выше
Anonymous
а дальше только резиновые женщины
Anonymous
таким - это с обычным API
Anonymous
никаких builder'ов монада не предполагает
Anonymous
это чисто костыль для C#
Anonymous
а ты прямыми руками попробуй!
Anonymous
сложная будет реализация. но это для сильных духом.
Anonymous
пользовать это легко
Anonymous
и красиво
Anonymous
и удобно
Anonymous
что тебе показать?
Anonymous
return getEither().Then(left => map(left), right => right).Then(left => somethingElse(left), right => right);
Anonymous
хули тут показывать?
Anonymous
красиво, удобно, читается хорошо, не швыряет экспемшины, при желании работает с Task и await'ится, так же можно прикрутить мультипоточную версию, если надо. но не должно быть надо.
Anonymous
короче - дело не в монадах ,дело в программисте (с)
Anonymous
не говоря уже о том, что можно упороться
Anonymous
и писать с помощью механизмов from / select
Anonymous
C#
Anonymous
но от такого на галерах люди сразу хуеют
Anonymous
когда видят
Anonymous
и git reset --hard твоих измнений делают
Anonymous
не нужно мне хамить, пожалуйста
Anonymous
а что конкретно не читаемо?
Anonymous
что ты не понял?
Anonymous
Anonymous
на
Anonymous
вот тебе с релаьного проекта
Anonymous
мокнутая версия
Vasily
Rx уже не модно, кстати?
Anonymous
сверху вниз читать
Anonymous
а с javacript promise у тебя такие проблемы?
Anonymous
Anonymous
по требованиям проекта
Anonymous
и ты их нормлаьно читашеь?
Anonymous
так ты лямбд испугался, мой маленький?
Anonymous
не бойся, они не кусаются
Anonymous
а нас только в одном офисе 230
Anonymous
и что?
Anonymous
друг мой, ты съезжашеь. ты говорил о нечитаемости принципальной. я тебе привел два примера. то, что у вас нет кадров - это ДРУГАЯ проблема.
Anonymous
и нельзя аргументировать отсуствие кадров твои слова о принципиальной нечитаемости.
Anonymous
нужно говорить: это круто, но у нас нет людей, которые это умеют
Shub
Shub
читаемый код в стиле write-once, модификации и расширению не поддается. хаскели, крестовые шаблоны и разные там эйфели тоже красивы и читаемы на таких примерах, жаль, дальше второй итерации не живут
Vladyslav
махач знатный. я бы сказал, что понятно о чем код
Shub
я жду, когда у меня кофе остынет, разминаю малые мышцы кисти пока
Shub
ну справедливости ради, читаемость - обоюдоострый меч. 50% читаемости добывается из черепной коробки автора кода
Shub
ну по таким критериям го - на первом месте. потом долго-долго ничего нет, и примерно возле горизонта событий идут всякие бейсики\vba и иже с ними
Shub
лол
Vasily
Хех, откопали змейку на мейлбоксах
Vasily
@atsapura , вроде твое
Vasily
И чо? Работать надо с первоисточниками
Vasily
Карочи
Vasily
Я так скажу
Roman
Vasily
Ничто не может заставить программиста писать понятный другим код
Vasily
У каждого в голове свой велосипед
Roman
слева направо сверху вниз