Aragaer
о да, у меня на первом месте доход идет от баша
Евгений
ага, а у меня тогда vimscript
Ты, настраиваешь вим программистам? Я просто дивапс и реально большую часть времени пишу ямлы
Anatolii
я уже не знаю кто я на своей работе, но чаще всего у меня открыты ansible playbooks
Anatolii
еще через tmate я помогаю другим разрабам
Евгений
А давай обсудим, что можно сделать легального для популяризации Haskell.
Установить диктатуру хаскелистов, восстановить плановую экономику и поставить хаскел в качестве планового проекта значит вычёркиваем. Остаётся написать что-нибудь интересное и полезное, чем будут пользоваться люди. Когда-то хмонад был манящим в сабж проектом
Alexander
> Установить диктатуру хаскелистов, восстановить плановую экономику и поставить хаскел в качестве планового проекта значит вычёркиваем. Подожди, а что тут нелегального? Все же можно легально сделать.
Alexander
> Остаётся написать что-нибудь интересное и полезное, чем будут пользоваться люди. Когда-то хмонад был манящим в сабж проектом Есть ли идеи?
Alexander
Окей, политику не обсуждаем, это всегда плохо кончается
Alexander
Ну тут нужно брейншторм проводить
Я уже называл несколько: - Распределенная билд-система для C++ (или для другого тяжеловестного языка), аналог IncrediBuild - Генератор какой-нибудь полезной либы, например, монадических парсеров, для любого другого языка
Anonymous
".. вообще считаю, что без статистики не жизнь, а так, каторга какая-то"
Alexander
s/статистики/статики/ и в канал лисперам закинут
Arseniy
А можно, кстати, попросить меньше флудить? В особенности @graninas.
A64m
щас сам себя забанит
Anatolii
а @crazy_fizruk в этом чате есть?
Anatolii
я что-то с его телеграм-бот-симпл не могу разобраться
Alexander
на канале нету, ник в приват скинул
Anonymous
А давай обсудим, что можно сделать легального для популяризации Haskell.
нанимать на работу, платить хорошую зарплату и учить хаскелю - именно в указанной последовательности
A64m
тем временем на фабрикаторе появился дифф с настройкой размера эфемерного поколения под размер кеша (но, наверное, отфутболят как-нибудь)
Alexander
-- Native STM: -- time 50.93 ns (50.19 ns .. 51.88 ns) -- 0.998 R² (0.996 R² .. 0.999 R²) -- mean 50.94 ns (50.16 ns .. 51.93 ns) -- std dev 2.754 ns (1.908 ns .. 4.204 ns) -- variance introduced by outliers: 75% (severely inflated) -- stm-free, initial (very slow) -- time 2.064 μs (1.898 μs .. 2.261 μs) -- 0.950 R² (0.936 R² .. 0.973 R²) -- mean 1.984 μs (1.867 μs .. 2.151 μs) -- std dev 482.8 ns (378.9 ns .. 708.8 ns) -- variance introduced by outliers: 98% (severely inflated) -- stm-free, with HMap optimizations: -- time 558.2 ns (517.4 ns .. 634.9 ns) -- 0.884 R² (0.816 R² .. 0.970 R²) -- mean 663.3 ns (555.6 ns .. 861.5 ns) -- std dev 307.2 ns (155.2 ns .. 431.3 ns) -- variance introduced by outliers: 99% (severely inflated) Это я занимался оптимизацией своей либы. Переписал некоторые внутренности, внес честную HMap вместо всяких ToJSON/FromJSON. Как видно, оптимизация оказалась очень успешной. Теперь моя либа не дотягивает до нативной всего лишь один порядок.
Alexander
Не слышал ранее о fastsum. Но да, следующим большим шагом будет freer. Просто, как я понимаю, freer выигрывает, когда монадическая цепочка достаточно длинная, а когда она короткая, разница вряд ли будет ощутима. Или я не прав?
Alexander
В любом случае, надо сделать еще ряд бенчмарков. Этот-то самый простой, на инкремент твари.
Зигохистоморфный
Не слышал ранее о fastsum. Но да, следующим большим шагом будет freer. Просто, как я понимаю, freer выигрывает, когда монадическая цепочка достаточно длинная, а когда она короткая, разница вряд ли будет ощутима. Или я не прав?
В одном случае надо адт версия фри в другом Чёрч версия, я забыл что в каком, но вроде Чёрч надо когда много или реконструкций или обновлений делаешь
Зигохистоморфный
У пурсы кстати со всякими оптимизациями и реморзами, коденсити и всякое такое
Alexander
А какие пакеты взять лучше?
Зигохистоморфный
improve вроде дает переход от free к church free
Зигохистоморфный
Даже пейпер есть про это, что-то вроде асимптотическая оптимизация или как-то так
Alexander
Окей. Позже начну новый этап оптимизаций
Зигохистоморфный
Думаю fastsum стоит попробовать, а вообще haskell не хватает полиморфных вариантов как в пурсе
Зигохистоморфный
Открытый полиморфный тип суммы это классно
Alexander
Кстати, кто что думает по поводу "What I wish I knew when learning Haskell" (http://dev.stephendiehl.com/hask/)? По-моему, прекрасный материал. В чем-то по стилю похож на "A Gentle Introduction To Haskell", но лучше.
A64m
там много странных моментов, как вообще у этого автора
A64m
ну, много не в смысле, что там большинство каких-то неправильных вещей, но достаточно, чтоб на них натыкаться регулярно
Pavel
кстати, а какой гайд вы бы рекомендовали для изучения Haskell с нуля при условии что есть опыт с (php, scala, rust, go) и интересуемая предметная область для применения haskell - это моделирование сценариев инвестирования для финансовых инструментов ?
Anatolii
Была какая-то книга и в названии было Haskell и Finance, попробуй поискать ее, но я ее не читал, просто вспомнил
Anatolii
Haskell Financial Data Modeling and Predictive Analytics
Anatolii
Но я конечно сомневаюсь что она для новичков
Anatolii
Ну и пакт не радует
Pavel
🙂 я бы наверное сейчас за что-то общее, чтоб минимальными шагами перейти к хаскелю как к инструменту.
Anatolii
Я бы вот это посоветовал
Anatolii
https://www.manning.com/books/get-programming-with-haskell
Pavel
может есть какой-то мануал, где к примеру сначала решают задачу в лоб, к примеру просто комбинацией функций. потом к примеру в следующей главе показывают как (пример от фонаря: с помощью апликативного функтора решают ту же задачу, но к примеру повышают уровень абстракции и что мол и типы у функций могут быть уже своего рода дженериками). потом к примеру разбирают примеры всех этих морфизмов, как они решают типовые задачи
Pavel
https://www.manning.com/books/get-programming-with-haskell
благодарю 🙂 сейчас заценю
Cheese
после Scala и Rust должно легко зайти
Cheese
там, правда, не про финансы
Cheese
вряд ли найдётся книга и про финансы, и введение в Хаскель
Pavel
вряд ли найдётся книга и про финансы, и введение в Хаскель
понимаю, и согласен. просто упомянул про направление. вдруг что-то такое видели
Pavel
не согласен
а можно мысли на тему ? 🙂
A64m
эмель легко бы зашел, а в хаскеле ленивость и IO
Vladimir
Haskell Financial Data Modeling and Predictive Analytics
Вторая ссылка в гугле: https://www.reddit.com/r/haskell/comments/1rj2jq/book_haskell_financial_data_modeling_and/
Vladimir
Тред просто шикарен)
Pavel
Evolution of Haskell programmer, кек
да, это кстати примерный трейс того чтобы хотелось понимать на каком я в данный момент уровне освоения в процессе обучения 🙂 спасибо
Vladimir
Открыл эту книгу от пакта. И действительно, мусор, уважаемые доны на реддите не соврали.
Pavel
и еще вопрос про редактор. что есть дефакто редактор / ide для хаскеля ? В чем практичнее всего стартовать писать, так чтоб больше наработок хаскель сообщества в плане инструментов использовать можно было без изобретения велосипедов ?
Maxim
щас какой-нибудь емакс посоветуют, лол
Pavel
щас какой-нибудь емакс посоветуют, лол
а ты бы что посоветовал ? 🙂 emacs находил, может есть другие варианты ?
Maxim
я лично пользуюсь vim с ghc-mod, мне хватает. хотел настроить hdevtools, но не смог
Maxim
но советовать вим это такое
Maxim
я не буду
Pavel
ага, понял. в общем кто в чем привык писать, там и пишут
Maxim
что логично :)
Maxim
вообще насколько я понял "нормальной" ide так и нет
Maxim
есть intellij-haskell, но говорят хреново работает
Maxim
в общем, попробуй ghc-mod и/или hdevtools с каким-нибудь любимым редактором, если они туда встраиваются
Maxim
но начинать можно и вообще без поддержки от редактора, имхо
Maxim
лишь бы синтаксис хайлайтил
Pavel
возможно странный и пока тупой вопрос: а типа дебажить хаскель - это что-то в стиле: "лол, что?" по причине чистых функций и достаточно четкой декомпозиции? и потому достаточно просто редактора с подсветкой синтаксиса и аля make файлов для сборки проекта и запуска тестов ?
Maxim
аля-make файлы это cabal
Maxim
де-факто система сборки
Maxim
начни с неё, гуглить cabal new-build насколько я понимаю (😉 тут некоторым)