Size: a a a

Programming Offtop

2020 July 25

(

( in Programming Offtop
(наброс) А Ильмир тут вообще жоб секьюрити занимается, я так понимаю
источник

AN

Alexander Nozik in Programming Offtop
(
Ну так и я говорю, что профита в саспендах нет
Чтобы это понять, необязательно кстати дырявить кодовую базу. Проблема в том, что суспенды - это очередной частный случай, который не подчиняется каким-нибудь внешним законам (например, монадическим), и расширяется только засчёт усилий Ильмира
Суспенды гораздо шире, чем рх. И разделение выполнения на сегменты ты никакими дырками не сделаешь.
источник

IO

Iaroslav Orlov in Programming Offtop
(
Ну так и я говорю, что профита в саспендах нет
Чтобы это понять, необязательно кстати дырявить кодовую базу. Проблема в том, что суспенды - это очередной частный случай, который не подчиняется каким-нибудь внешним законам (например, монадическим), и расширяется только засчёт усилий Ильмира
вся мысль программирования идёт из теорката
источник

AN

Alexander Nozik in Programming Offtop
Опять почему-то суспенды свелись к реактивным стримам
источник

AN

Alexander Nozik in Programming Offtop
Iaroslav Orlov
вся мысль программирования идёт из теорката
да ну.
источник

(

( in Programming Offtop
Alexander Nozik
Опять почему-то суспенды свелись к реактивным стримам
где?
источник

AM

Andrew Mikhaylov in Programming Offtop
(
Ну так и я говорю, что профита в саспендах нет
Чтобы это понять, необязательно кстати дырявить кодовую базу. Проблема в том, что суспенды - это очередной частный случай, который не подчиняется каким-нибудь внешним законам (например, монадическим), и расширяется только засчёт усилий Ильмира
Так мы тебе и пытаемся тут донести, что если ты хочешь язык, построенный вокруг более общего, без частностей — иди пиши на своей скале. Мы тут в котлине с удовольствием пользуемся частностями, которые позволяют удобным образом решать задачи.
источник

(

( in Programming Offtop
Andrew Mikhaylov
Так мы тебе и пытаемся тут донести, что если ты хочешь язык, построенный вокруг более общего, без частностей — иди пиши на своей скале. Мы тут в котлине с удовольствием пользуемся частностями, которые позволяют удобным образом решать задачи.
Да окей, на здоровье, см. окончание моего лонгрида
источник

AM

Andrew Mikhaylov in Programming Offtop
Обмазывайся своими опшнлами, дырками, тут же ж совершенно никто не против.
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Так мы тебе и пытаемся тут донести, что если ты хочешь язык, построенный вокруг более общего, без частностей — иди пиши на своей скале. Мы тут в котлине с удовольствием пользуемся частностями, которые позволяют удобным образом решать задачи.
При этом не значит, что ХКТ не нужон. Скаловый/хаскелевый ХКТ не нужон. Нужно что-то более органично в язык вписывающееся
источник

AD

Apache DOG™ in Programming Offtop
Alexander Nozik
Вы не поверите, у Платона все это есть.
Ну ещё один камень в пользу либо того что мысли существуют отдельно от мыслителей, либо мосги устроены одинаково
источник

I

Ilmir in Programming Offtop
(
Начиная с определённого момента, котлин начинает форсить в вашу кодовую базу анемичную модель. Это не плохо и не хорошо, это просто следствие того, что он принял некоторые функциональные подходы и перевел фокус с действий на данные. Котлинисты теперь больше стали думать не над тем, как декораторы раскидать, а как по коллекции красиво пройтись, вот что-то из этого рода. В некотором смысле это можно назвать идиоматическим кодом.
Но тащить разные фичи в язык и называть их идиомами - это путь к тому, что Set.filter возвращает лист, юзеры постоянно спотыкаются на корнер-кейсах, полгода переезжают с Ркса на корутины, а библиотекописари в замешательстве пытаются абстрагироваться над как раз suspend-ом. Фичи в языке должны синергировать.
ХКТ - это не какая-то прихоть, и даже не идиома. Это логичное развитие любого языка с дженериками, потому что раз вы параметрически полиморфны по значениям, будьте добры быть параметрически полиморфными и по оберткам, иначе вы привязываетесь к бесконечному числу частных случаев.
И втаскивание фич в язык "по необходимости", а не "по задумке" - это, кстати, и есть С++ вей. Вот юзер споткнулся на каком-то кейсе, накатал пропозал, ему решили его проблему очередной фичей, отлично. Что это за фича? Будет ли она синергировать с другими? Нужна ли она другим юзерам? Какой мне толк от делегейтед пропертей, если команда крутит пальцем у виска, не понимая, что здесь написано?
Язык должен стремиться к тому, чтобы максимальное количество вещей можно было выразить на нём же, не открывая ютрек, иначе он всегда превратится в С++. Тут кстати и про суспенды - им необязательно быть частью компилятора, в пресловутом хаскеле почти такие же корутины реализованы на уровне библиотеки через ХКТ и монады и не отличаются от всего остального кода в смысле каких-то специальных ключевых слов или чего-то в этом роде.
Короче, если котлин-вей - обсуждать в пропозалах "а кому это надо" и "не сломает ли нам это что-нибудь", то увидимся через пять лет в паблике с мемами, где котлин будут сравнивать с плюсами. Если, конечно, язык выдержит такое многообразие взаимномешающих фич и вообще сможет развиваться
Повторюсь. Если тебе нужна скала, ты знаешь, где её взять. Теперь отвечу на домыслы про развитие языка и сравнение с плюсами: процесс сильно различается. В котлине упор на практику, а не обсуждение "не сломает ли чего". В течение этого периода как раз взаимодействие фич и проверяется. На практике. Появляются новые идиомы. Сколько всего нового в дотти? Сколько времени будут вылавливать все баги и через сколько десятилетий все передут на дотти, потому что совместимости нет. Корутины могут реализованы даже как макрос в кложе, без всякого хкт. Но чтобы реализовать эффективно, надо реализовать на уровне языка. Иначе сам бы песочил, что корутины тормозят. Зато теперь у нас есть CPS, на который можно натягивать другие фичи.
И да, хкт, как способ организации кода - именно идиома.
Короче, хватит пытаться натягивать идиомы из скалы на котлин. Почему-то джависты уже поняли, что котлин - другой язык, а фанатики - нет.
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
При этом не значит, что ХКТ не нужон. Скаловый/хаскелевый ХКТ не нужон. Нужно что-то более органично в язык вписывающееся
Мультиресиверы к ХКТ никакого отношения не имеют.
источник

AN

Alexander Nozik in Programming Offtop
Вот если бы ты, @happy_bracket, взял и кип написал. Была бы польза
источник

AN

Alexander Nozik in Programming Offtop
Apache DOG™
Ну ещё один камень в пользу либо того что мысли существуют отдельно от мыслителей, либо мосги устроены одинаково
А это есть у Декарта
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Мультиресиверы к ХКТ никакого отношения не имеют.
Спорный вопрос. Я могу эмулировать многие вещи из ХКТ на мультиресиверах. Но я пока не про это говорил, а про более общую штуку
источник

I

Ilmir in Programming Offtop
(
Просто suspend мог быть не ключевым словом, а маркировкой типа
Это не ключевое слово.
источник

AN

Alexander Nozik in Programming Offtop
Вот хотя бы такую штуку: https://github.com/Kotlin/KEEP/issues/209
источник

AD

Apache DOG™ in Programming Offtop
Монадки можно писать даже в джаве но без абстракции
источник

AD

Apache DOG™ in Programming Offtop
Для этого хкт не нужно
источник