это удобно, быстро и просто после возни с TF. Кто может аргументированно охаять котлиновские корутины, чтобы вернуть мне веру в Скалу?
а какая у вас возня с TF?
Ссылочной прозрачности нет /thread
Довод, но ссылочная прозрачность - это инструмент, а не самоцель. Не зря во многих либах боятся делать f: F[A] в аргументах функций и пишут вместо этого f: => F[A]
просто ты джавист, поэтому тебе удобно)
Ты меня разочаровываешь, я ожидал личного наезда сначала от Daniel)
Я иногда провоцирую, но на личности не перехожу)
Я не про тебя, а про сообщение чуть выше, без лямбд)
А почему боятся? Это разве не с целью обеспечить ленивость?
вы на вопрос то ответьте сначала, может у вас какой-то свой TF
Именно, на случай, если пользователь передаст неленивый эффект (или эффект, сконструированный неправильно)
@sergey_alaev вот важный вопрос если что
Нет, это известный демагогический прием известного персонажа. Перевести вопрос в плоскость личного мнения и заявить, что это мнение неправильное и вопрос не имеет смысла. Замечу, что спрашивал я вообще про корутины)
runCatching из стдлибы ловит CancellationException
Так без персонажа, я лично действительно не понимаю, какие могут быть возни с ТФом
Это довод, первый коммент по теме, спасибо.
Так надо только про котлин говорить?
Надо говорить как надо Сергею, Сергей он как Лев, только Сергей
интересно, как тф связан с корутинами? посмотрел доку корутин, с зио или каким-то другим ио бы уже сравнивали
Да и с ио некорректно наверное сравнивать
наверное, я одну страницу проскролил просто
Сергей, к сожалению, ничего тут добавить нельзя. Нет никакого сравнения корутин с TF, корутины гораздо лучше, пишите на корутинах. Мы очень сожалеем, что больше никогда не услышим вашего мнения в этом чате, но что поделать
И то, и другое - это DSL для асинхронного кода. Все реализации IO-монады в скале более-менее одинаковы по характеристикам, мне хотелось бы, чтобы человек, знакомый с обоими подходами, изложил, чем вариант скалы принципиально лучше.
мне кажется вы тут единственный, кто оба варианта опробовал, и кто мог бы нам рассказать, чем вариант котлина вас подкупил. может и правда есть чего почерпнуть
ты видел новый arrow?
Впервые слышу, что их два. Смотрел на arrow пару лет назад, выглядело как грубая копия котов, т.к. язык все-таки не тот
https://arrow-kt.io/docs/effects/io/
забавно конечно, но не думаю что TF это DSL Для асинхронного кода в первую очередь
А зачем еще усложнять свой код эффектами? Resource, ApplicativeAsk, явное описание ошибок и контекста в эффектах - это приятно, но недостаточно, чтобы загромождать код for-comprehensions-ами и ненативными для скалы операторами композиции
Забавно, но это же только способ реализации IO? Для эргономики библиотеки это не выглядит важным.
а мне кажется, как раз pragmatics это меняет сильно. Раньше там везде были HKT на хаке из https://github.com/ocamllabs/higher, их выпилили.
Там смоделировали IO на продолжениях, если это не меняет, то не знаю, что меняет
As a consequence, we have gotten rid of most of the functor hierarchy since continuations give us the ability to bind in place and compute anything in a coroutine that later can resume the program stack. The functor hierarchy is only useful when using an indirect style.
Ждем следующего шага - понимание, что IO не нужен и достаточно suspend fun?)
Пересмотрел код, который я переписывал со скалы на котлин. Вариант на котлине менее строгий (AutoCloseable вместо Resource, отсутствие тайпклассов), но более прагматичный и писать приятнее. Сложно объяснить, нужно сесть и попробовать.
Я задел твои религиозные чувства?
То есть это субъективные впечатления, особенно касательно "прагматичности", все таки.
К сожалению, математики в IT не котируются, неспособны они формально выбрать лучший способ писать код. Остается опираться на свой опыт и мнения экспертов. Как человек. который много лет писал на джаве, на скале в самых разных стилях, на котлине, я имею право на своё мнение)
но как говорится в таких вопросах никому доверять нельзя
Безусловно! Просто начал ты с того, что нужно "аргументированно охаять корутины, чтобы вернуть веру в скалу", но не очень ясно зачем хаять, если это дело вкуса.
Не вкуса. Опыта. И знаний - у корутин есть объективные недостатки перед монадической композицией.
Какие, если не секрет
Но ты же вот сообщением выше пишешь про отсутствие формального выбора метода написания кода и своё мнение. Это же и есть вкусовщина.
Я бы, кстати, почитал/послушал про недостатки корутин перед монадической композицией, потому что я не сильно в теме корутин. Так что было бы здорово, если бы ты смог поделиться опытом, т.к. попробовал и то и другое.
Олег, похоже, что-то знает, но он сегодня токсик
да вроде у тебя есть опыт достаточный, и мысли методично излагаешь; я бы тоже почитал; плюсую Кирилла
Нет, этот этап я прошел. Самопиар мне не нужен, а комментарии и отзывы не окупают затраченные усилия
ну причём тут пиар, ты ж знаешь что-то; я б почитал небольшую статью о корутинах преимуществах и недостатках
Если считаешь, что писать о таком не окупается, зачем призываешь других писать о таком
Обсуждают сегодня