Size: a a a

Programming Offtop

2020 October 30

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Про аудиторию - это общо слишком. Но давайте подумаем, а откуда возьмется тайп-конструктор?
В смысле откуда возьмётся? Он будет определён, как и сейчас, и благодаря некоторому механизму в языке будет доступен, как конструктор типа.
источник

AN

Alexander Nozik in Programming Offtop
Но цепочка стадартная. ХКТ нужен для монад. Монады нужны сделать иммутабельный язык. Иммутабельный язык нужен... зачем? Он же уже есть
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
В смысле откуда возьмётся? Он будет определён, как и сейчас, и благодаря некоторому механизму в языке будет доступен, как конструктор типа.
Вы сможете этот механизм объяснить первокурснику?
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Вы сможете этот механизм объяснить первокурснику?
Блин, ну весь остальной котлин, включая дженерики, как-то объясняется. На бытовом уровне ХКТ должно быть ввести после дженериков не намного сложнее, чем ввести, собственно, дженерики после обычных типов.
источник

АT

Андрей Tama in Programming Offtop
Andrew Mikhaylov
Блин, ну весь остальной котлин, включая дженерики, как-то объясняется. На бытовом уровне ХКТ должно быть ввести после дженериков не намного сложнее, чем ввести, собственно, дженерики после обычных типов.
Другой уровень абстрактности, будет хуже пониматься всё равно.
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Блин, ну весь остальной котлин, включая дженерики, как-то объясняется. На бытовом уровне ХКТ должно быть ввести после дженериков не намного сложнее, чем ввести, собственно, дженерики после обычных типов.
Функцию map можно объяснить магией. Пока это стандартные типы. А что будет, как только надо нестандартный тип подсунуть?
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Но цепочка стадартная. ХКТ нужен для монад. Монады нужны сделать иммутабельный язык. Иммутабельный язык нужен... зачем? Он же уже есть
Ну вот у Егора иммутабельного языка нет. Мне, даже если отойти от андроида, тоже неназванный язык интересен лишь отчасти, из-за отсутствия интеропа с грязными, но эффективными языками с большой экосистемой. Что делать?
источник

AM

Andrew Mikhaylov in Programming Offtop
Андрей Tama
Другой уровень абстрактности, будет хуже пониматься всё равно.
Спорное утверждение, без эмпирической проверки его ни получится ни подтвердить, ни опровергнуть.
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Ну вот у Егора иммутабельного языка нет. Мне, даже если отойти от андроида, тоже неназванный язык интересен лишь отчасти, из-за отсутствия интеропа с грязными, но эффективными языками с большой экосистемой. Что делать?
Я не спорю, что больше фич хороших и приятных. Но никакие фичи никогда не бесплатны. Вопрос в том, окупается оно или нет
источник

AN

Alexander Nozik in Programming Offtop
Andrew Mikhaylov
Спорное утверждение, без эмпирической проверки его ни получится ни подтвердить, ни опровергнуть.
Так есть же скала. Почему не пишут на ней?
источник

(

( in Programming Offtop
Alexander Nozik
Так есть же скала. Почему не пишут на ней?
Пишут
источник

AN

Alexander Nozik in Programming Offtop
(
Пишут
Сколько?
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Функцию map можно объяснить магией. Пока это стандартные типы. А что будет, как только надо нестандартный тип подсунуть?
Нестандартный тип достаточно обозвать "смотри, на этом можно вызвать мап", и жизнь пойдёт прекрасно. Вы думаете, сейчас разработчики не замечают, что у обзёрваблов, флоу, стримов, коллекций есть похожий набор экстеншнов? Или вы думаете, что они аналогию понять не в состоянии?
источник

(

( in Programming Offtop
И монад много, целый тайплевел стек
источник

(

( in Programming Offtop
Alexander Nozik
Сколько?
Да много, 200 вакансий на хх, значительно больше на линкедине, по всему миру
источник

(

( in Programming Offtop
Safe to say, некоторые из них это акка/плей, но все же
источник

AM

Andrew Mikhaylov in Programming Offtop
Alexander Nozik
Я не спорю, что больше фич хороших и приятных. Но никакие фичи никогда не бесплатны. Вопрос в том, окупается оно или нет
Ну я, в отличие от Егора, и не топлю на 100% за то, что в котлине нужен ХКТ. Хотя идея интересная, и если б не обратная совместимость, возможно, топил бы чуть больше.
источник

ML

Mikhail Levchenko in Programming Offtop
(
> ФП хаскеля - это монады
Монады будут в любом языке, в котором есть хкт и тайпклассы, потому что в любом таком языке их можно выразить

Цель монад как конструкции - как раз сделать, как вы говорите, "универсальную монаду" (хотя данное высказывание - нонсенс, правильнее сказать "общий интерфейс/контракт всех прочих монад"), потому что какая мне разница, является ли опшен монадой, является и является
Но если я знаю, что у него такой же контракт, как и у какого-нибудь резалта, асинка, и чего угодно ещё, то я могу написать полиморфный по типу монады код, который будет делать что-то конкретное и переиспользовать код везде

На самом деле это верно для любых вещей, у которых есть типовая дырка и какое-то поведение, монады просто на слуху, потому что их чаще всего понимают и объясняют неправильно
а как часто такой полиморфный код надо писать клиенту?
источник

AN

Alexander Nozik in Programming Offtop
У меня примерно одно место на все весьма сложные либы, где хкт может быть полезен. И это место прекрасно закрывается мультиресиверами. Да и без них хорошо живет на самом деле.
источник

(

( in Programming Offtop
Mikhail Levchenko
а как часто такой полиморфный код надо писать клиенту?
Да хотя бы ТФ возьми, там одни дырки
источник