Anonymous
А можно компилировать из под линукса на винду?
Aliester
смотря что
Aliester
С/С++?
Aliester
джава
A64m
нет, только виндовый компилятор ставить
Anonymous
джава
Haskell
Aliester
хаскель на винде вроде так себе работает
A64m
кросскомпиляции для ghc (почти) нет, только разработчики под андроид и иос кросскомпиляторы накостылили кое как
Anonymous
А мультиархитектурная компиляция?
A64m
хаскель на винде вроде так себе работает
да, по факту платформа эта для ghc не первого уровня
Валерий
А, ещё не забывай про тонны оптимизаций для списков — что-нибудь вида sum $ take 40 $ filter even $ map (\x -> floor (exp x)) [0.0, 0.1 ..] может вообще не сделать список
Валерий
а может делать :с
с -О0 наверное будет, да) с -О2 очень вряд ли, можно посмотреть
Валерий
Но не более, чем 1, емнип
A64m
да, ФП код ghc хорошо оптимизирует, но такой код кроме как на хаскеле никто нигде не пишет, так что на стороннего программиста это не особое впечатление произведет
Валерий
Я слышал, что кложура ещё жива
Валерий
Как-никак диалект лиспа
A64m
там ФП код не оптимизируется, насколько я понимаю
Валерий
под jvm самые тупые компиляторы обычно но вот конкретно с кложурой не должно быть всё очень плохо
ᛏᚺᛖ ᛚᛖᛋᛒᛁᚨᚾ ᛗᚨᚾ ᚷᛁᚱᛚ 🐝
A64m
впрочем, я для своего минифп бенчмарка вариант на кложуре не писал, не знаю, готов что меня удивят (нет)
ᛏᚺᛖ ᛚᛖᛋᛒᛁᚨᚾ ᛗᚨᚾ ᚷᛁᚱᛚ 🐝
тип там есть команда развёртки функции в хвостовую рекурсию которая как-то работает но я бы лучше послушал специалистов в кложе
Aliester
Но он наверное полумертвый
A64m
тип там есть команда развёртки функции в хвостовую рекурсию которая как-то работает но я бы лучше послушал специалистов в кложе
там она очень ограниченная, да и мало этого для того чтоб ФП код хорошо оптимизировать
Quet
если нужно сделать рекурсию и не взорвать стек то вполне хватает, а чего тебе еще надо?
A64m
в чем именно ограничена?
ну нельзя сделать хвостовую взаимную рекурсию двух функций, которые в жвм-ные методы энкодятся например
Quet
нельзя а тебе это часто надо было делать?
Quet
(если ты вообще на кложе писал что-то в прод)
A64m
речь то не о том что на кложе писать нельзя, а о том что писать в ФП стиле нельзя, а там еще и не такое бывает
Quet
и все же два вопроса ) писал ли ты на кложе и как часто надо такую взаимную рекурсию было делать?
A64m
нельзя в фп стиле следует из того, что только хвостовая саморекурсия поддерживается, со всеми остальными дело плохо
A64m
я типизированные ФЯ люблю, буду писать на кложе только под страхом смерти
Quet
ну вдруг сказал бы что писал но вот эта взаимная рекурсия жить не дала проект завалил, ушел на хаскель
Евгений
Quet
звучит как история успеха
избегания успеха )
Евгений
Можно уйти в лётчики, на заводе тоже много работы найдётся. В любом случае это всё менее сложно и отвратно чем писать на чём-то кроме хаскеля после хаскеля
A64m
только вот то что я не писал на кложе не отменяет того, что рекурсия там не поддерживается, кроме самого вырожденного случая
Quet
по моему опыту -- не мешает вообще
A64m
там и гардед рекурсии дешевой нету, а уж ее то в ФП в каждой строчке применяют
Quet
в каждой прям? ) то есть открываю любую либу на хаскеле и она там в каждой второй строчке?
A64m
да, map filter вот это вот все
Quet
с этим в кложе нет проблем
A64m
все любители недофя так про недофя говорят, везде проблем полно
Quet
особенно смешно когда про проблемы говорят люди которые даже не писали на этом языке )
Quet
видимо проблемы уровня взаимной рекурсии (серьезная проблема, очень мешает жить)
A64m
особенно смешно когда про проблемы говорят люди которые даже не писали на этом языке )
почему это смешно? Кто будет писать на языке с проблемами на ровном месте если может не писать?
A64m
видимо проблемы уровня взаимной рекурсии (серьезная проблема, очень мешает жить)
проблема не во "взаимной рекорсии" а вообще во всем кроме саморекурсии
Quet
ну так какие именно на ровном месте у тебя были проблемы с кложей?
A64m
т.е. ничего кроме foldl работать нормально не будет
Quet
кроме основной проблемы (ты не писал на этом языке, но заочно уже все плохо, "недофя" и тд)
A64m
ну так какие именно на ровном месте у тебя были проблемы с кложей?
у меня проблем не было, потому что я их избегаю, след. избегаю кложу
Quet
что такое "работать нормально"? делаешь мап и он через раз падает с эксепшеном?
A64m
кроме основной проблемы (ты не писал на этом языке, но заочно уже все плохо, "недофя" и тд)
так что что я на ней не писал это не проблема, проблема была бы, если бы писал
Quet
о, уже конкретика что именно тормозит и относительно чего измерял?
A64m
но, насколько я понимаю, на кложе и стек вышибить вполне можно, чего в ФЯ быть не должно
Vladislav
SPJ не того человека назвал автором фичи в GHC (перепутал Ryan Newton и Ryan Scott). Мне б обидно было.
Quet
относительно хаскеля тормозит
относительно си тоже тормозит ) и из этого делается вывод что "не работает нормально"
Quet
мне кажется делать выводы о языке ничего на нем не написав это шиза )
ᛏᚺᛖ ᛚᛖᛋᛒᛁᚨᚾ ᛗᚨᚾ ᚷᛁᚱᛚ 🐝
A64m
относительно си тоже тормозит ) и из этого делается вывод что "не работает нормально"
если вы считаете что с поддержкой базовых ФП фич в кложуре все хорошо перепишите этот трехстрочник на ней и я вам поверю и буду всем кложу рекламировать как полноценный ФЯ, потому что все базовые фичи тут есть primes = 2:3:filter isPrime [5,7..] :: [Int] isPrime x = all (/= 0) . map (rem x) . takeWhile ((<= x) . (^2)) $ primes main = print . length . takeWhile (<= 2^24) $ primes
Quet
на си довольно трудно писать фп код
не спорю. я скорее против аргумента что "на языке Х это быстрее значит в языке Y это не работает и поломано вообще"
A64m
на си довольно трудно писать фп код
почти совсем невозможно
Vladislav
А про Backpack в GHC 8.2 он решил не говорить? Ой мда.
ᛏᚺᛖ ᛚᛖᛋᛒᛁᚨᚾ ᛗᚨᚾ ᚷᛁᚱᛚ 🐝
почти совсем невозможно
можно, но там будет очень туго с оптимизациями
Влод
нужно поработать на брейнфаке чтобы делать выводы о нём. желательно продакшен
A64m
А про Backpack в GHC 8.2 он решил не говорить? Ой мда.
это первое что я заметил и тут откомментировал
Quet
нужно поработать на брейнфаке чтобы делать выводы о нём. желательно продакшен
до абсурда можно довести все что угодно мы все же говорим про практические языки цель которых как раз писать в прод
A64m
даешь специальную олимпиаду!
хорошо бы, но обычно этот трехстрочник перписывать не хотят
Vladislav
это первое что я заметил и тут откомментировал
так я ж сразу пошел видео смотреть и сам комментировать, а не чат дочитывать, теперь вижу