примеры и не понял смысл ее существования, ведь она делает все то же самое, что и все null-safety в котлине, а всякие Either<T, R> для результата или ошибки еще больше путают, ведь можно использовать аннотацию @Throws, если очень надо
Так в чем же сила библиотеки?
Если я не ошибаюсь, она завязана на функциональный стиль и добавляет инструментарий для этого
Если не поняли, значит не нужна. Она сделана поклонниками хаскель-стайла для реализации этого самого хаскель-стайла.
Но у меня она в проекте и мне нужно с ней работать, так что понять нужно обязательно👐
Сочувствую. Тогда придется читать про хаскель или как минимум про скалу. Разумеется, если у вас не тот случай, что она затащена только ради either
Вы давно на неё смотрели? Там на данный момент выкинули уже почти всё, что на Котлин плохо ложится. Core часть действительно содержит в основном то, что полезно в большом количестве проектов может быть.
Давно, год назад. Но тем не менее стиль-то там все равно хаскелевый
ее можно использовать на разную глубину. если у вас там обычные Either, Validated и Option то там ничего сложно не должно быть. Главное понять концепцию map и leftMap, flatMap и еще чуточку.
а значит я мог пропустить многое. Я в качестве эксперимента затягивал Core часть просто поиграться с возвращаемыми ошибками. в доменную модель. там они красиво ложились.
Эм. Нет? Тайп классы выкинуты в том числе почти все. Просто несколько конструкций, которые много где известны (Either/NonEmptyList/Validated) и функции для удобной работы с ними и расширения для существующих типов.
Вот сейчас открыл. Там опять все про ехала монада через монаду на монаду.
Мы действительно будем говорить, что красивый синтаксис над flatMap это сложно и недопустимо для Котлина? :)
Так не об этом речь, а о том, через что оно вводится и объясняется. Мой исходный тезис был в том ,что для того, чтобы понять как и что делается в Arrow надо понять, откуда они это взяли, а не то, что это категорически не надо использовать.
Я не смотрел именно доку, но в целом если монады и monad comprehensions это самый продвинутый концепт, который остался в core части, то я бы не сказал, что либа какая-то очень недоступная стала. Более того, кроме сахара над монадами там просто есть ещё пачка вспомогательных вещей, которые довольно простые.
Но доку может прочищать ещё надо, как и многие другие :)
Я тут не спорю, поскольку никогда всерьез ее не использовал и не могу тут комментировать. Но вот доку открыл - и там сразу оно.
Обсуждают сегодня