Anonymous
Гхц я не тестировал
Anonymous
При чём тут гхц?
Anonymous
Какель я уважаю, но тянуть его в прод и изучать глубоко не решаюсь, товарищи
A64m
я думал это было в ответ на вопрос что в скале лучше чем в хаскеле
Anonymous
Не туда думал
Влод
алсо то что жалуются на скорость компилятора скалы - слухи?
Влод
ну ззвучит глупо предложение
Влод
но думаю ты понял
Anonymous
Anonymous
Но скала лучше держится при росте кодовой базы
Anonymous
В моих тестах
Anonymous
Субъективно
Anonymous
Грамматика котлина сложнее (жырнее, больше) объективно
Anonymous
лол
Anonymous
@jey_lee иди в го чат, тут эти споры о языках не нужны
Anonymous
О каких языках?
Anonymous
Я всего лишь оспариваю тезис сверху
Anonymous
О безусловном превосходстве хаски
A64m
Влод
Грамматика котлина сложнее (жырнее, больше) объективно
это как-то не-интуитивно.
ну и не думаю что даже так (ну то есть я не сомневаюсь, что ты сравнивал, просто странно откуда там в котлине огромная грамматика) — размер грамматики вроде не показатель особо.
понятно что приятнее видеть компактность грамматики без всяких адхоков
Anonymous
Anonymous
Не буду ж я на сиае инкременталить
Oleg
Однако тот факт, что в скалке и расте методы нормально бустит продуктивность иногда.
В хаскеле приходится в голове полностью формулу складывать очень ограничено используя подсказки, а методы можно удобно чейнить с подсказками
Denis
Выше классику заметил: “X лучше чем Y, потому что я X знаю, а Y лень учить.”
Oleg
Это как бы и здорово, с другой стороны, потому что в хаскельчике получается куча маленьких формул, а в скалке и расте гигантский чейн
A64m
Denis
Oleg
Oleg
Отдельный кусочек кода глобальный или в let/where
A64m
Oleg
В хаскелле наверное огромные получаются только если без коспрехеншонов писать какие-то монадные, или парсеры объявлять
Oleg
А в скале если ты сел и написал всю логику отдельной компоненты в виде одного выражения для акка стрима на страницу, ты сидишь такой довольный собой
Oleg
не ожидал такого
Там есть такая проблема, что ИДЕ начинает компилить сама и это не всегда совпадает с мнением билд-тула.
Поэтому, чтобы не гадать над каждой ошибкой фантомная она или нет, ты переключаешь ИДЕ в режим, где у тебя вывод билда буквально в консоли.
И ты ищешь среди сотен строк вывода строки, начинающиеся на [error] дедовскими способами.
В коде ошибки подчёркивает, но опять же часто false positive. Но в зависимости от сложности использумых тобой типов, эта вероятность может расти.
В скалачате часто задают вопрос, перестала ли ИДЕЯ краснеть от очередной ФП библиотеки
anton
Скала сильно в стек трейсе выигрывает, против хаскельноно something went wrong
Anonymous
Why not to talk in english? These вкрапления look kinda dumb tbh
Leonid 🦇
Вроде не пятница, а чат отстойный.
Влод
лол
Denis
Leonid 🦇
Развели тут токсичность
Влод
ну это правда больше про пакеты, нежели хаскель
Denis
кстати тут го кибербуллят еще
Влод
фембой?
andrei
лол
Anonymous
Oleg
Зато я до сих пор считаю за супергероев людей, которые могут с помощью обычного профайла понять, где там в хаскелле не хватает пары seq, чтобы память не текла.
А вот жвмные хипдампы часто хорошо анализируемы
Anonymous
Anonymous
А если все плохо-можно в живой процесс залезть и там методы подергать
Anonymous
Класс оттрансформировать
Anonymous
Дебаггер присобачить
Anonymous
Метрики собрать
Anonymous
Это тоже большой плюс
Leonid 🦇
Пиши нормально, нормально будет
Anonymous
И вот в этом-то и вопрос
Anonymous
Нормально-это как?
A64m
да, со стектрейсами в хаскеле все очень плохо, с профайлером памяти получше, но все равно плохо
Cheese
а где такое может пригодится?
у меня есть на работе программа, которая принимает сообщение одного из дюжины видов. в одних функциях нужны сообщения определённых видов, в других — все типы
Oleg
В компиляторе для человеческого ФП, разработчик вообще не должен задумываться, какой у него там эвалюэйшн. ГХЦ, вероятно, ближе всего к такому компилятору из альтернатив, но всё ж не настолько близко, чтобы можно было ограничиться пиши нормально
A64m
Denis
довольно частый кейс
Denis
решается по разному в зависимости от действий, которые надо выполнять
Denis
прямолинейная фигня на ADT городится для простых кейсов, для ситуаций когда значение определяет тип нужны уже павертулз, т.е. синглтоны
Oleg
из того, что лучше-
макросы в скалке были лучше TH от рождения
следующая итерация ещё лучше
а третью, которую сейчас мутят будет вообще бомбическая
мы ещё поспорим с рэкетом за звание лучшего типизированного лиспа
Cheese
Denis
Oleg
Я помню @catamorphism в каком-то сраче в гисте моделировал на датакайндах что-то подобное
Cheese
Oleg
Но так вообще не стоит ставить знак равенства между ООП и субтайпингом
Oleg
или даже включения в любую сторону
Влод
Влод
а что же тогда ооп?
Влод
эх
Denis
ООП это провокация
Влод
блин думал свежее выдержанное незамутнённое мнение услышать
A64m
ооп сводится к одной фиче - ссылкам. Есть ссылки - получаем идентити и сабтайпинг через префиксинг (объекты могут быть кусками в памяти разной величины и те, которые начинаются также как и другие имеют один супертип)