УМННБJ, ЯХВ. Войти !bnw Сегодня Клубы
Привет, TbI — HRWKA! 1239.0 пользователей не могут ошибаться!
?6946
прекрасное6443
говно5907
говнорашка5512
хуита4716
anime3066
linux2654
music2635
bnw2602
рашка2565
log2356
ололо2178
дунч1833
pic1815
сталирасты1491
украина1439
быдло1437
bnw_ppl1422
дыбр1238
гімно1158

data These a b = This a | That b | These a b
#SR7XTI (0) / @ndtimofeev / 547 дней назад
В догонку к #TNZ3P0. Видимо поведение .ghci в cabal repl обусловлено тем, что его тестировали только на :set prompt "λ> ". Оно работает.
#WSP85S (1) / @ndtimofeev / 578 дней назад
Пытаюсь создать при помощи .ghci окружение для использования конкретного пакета в интерактивном режиме. Но cabal repl почему-то грузит .ghci до, а не после компиляции модулей пакета, что безусловно очень удобно. Хорошо. Создаю более другой пакет. В нём линкуюсь со своим пакетом и в .ghci использую его модули. Код выполняется, но символы которые определяются в .ghci в repl'е не видны. Окей. cabal exec -- ghci -package myshit. Теперь наконец работает всё! Если в пути к локальной packagedb нет юникода. Дальше попытка использовать сандбокс от cabal без помощи cabal, но я уже заебался.
#TNZ3P0 (2) / @ndtimofeev / 578 дней назад
-XStrict - лучшее расширение ghc! Не забывайте включать во всех своих проектах!
#LUBHN5 (2) / @l29ah / 614 дней назад
Запускаем долгое вычисление в ghci, жмём ctrl+c, вычисление валится с user interrupt exception. Пишем ей долгий обработчик user interrupt exception, жмём ctrl+c, проваливаемся в хэндлер, жмём ctrl+c и проваливаемся в бездну. Хэндлер по ctrl+c не валится. Окей. Маскирование? Переписываем всё с catch на try. Теперь обработчик ctrl+c точно размаскирован, точно находится в том же треде. Но ctrl+c не ловит.
#WC9SX5 (3) / @ndtimofeev / 625 дней назад
Для нужды логирования собираю ThreadId отправителя. ThreadId умеет в Show в виде ThreadId и номер треда, что выглядит как говно. Преобразования ThreadId к числовому типу нету. Окей. Лезу в скрытое определение ThreadId. ThraedId это обёртка вокруг СПЕЦИАЛЬНОГО unboxed типа ThreadId# и для его преобразований в число используют специальные приватные функции из недр GHC. Окей, read . drop 9 . show, сука. Статик тайпед май эсс.
#H6V3WN (5) / @ndtimofeev / 626 дней назад
https://github.com/rust-lang/rust/issues/101728 Почему хаскелисты могут въебать сигнатуру где хотят (или вообще не въёбывать чтобы компилятор вывел всё сам), а у раста всегда с этим какие-то сложности? Вон, уже дошло до выпиливания однозначно полезных фичей из языка.
#VPZ9P5 (11) / @l29ah / 646 дней назад
-- This smart constructor allows sharing of the two most common -- cases. See #19194 mkIfaceTyConInfo :: PromotionFlag -> IfaceTyConSort -> IfaceTyConInfo mkIfaceTyConInfo IsPromoted IfaceNormalTyCon = IfaceTyConInfo IsPromoted IfaceNormalTyCon mkIfaceTyConInfo NotPromoted IfaceNormalTyCon = IfaceTyConInfo NotPromoted IfaceNormalTyCon mkIfaceTyConInfo prom sort = IfaceTyConInfo prom sort
#1H47JW (2) / @komar / 702 дня назад
Хочу корутины. Суть такова: нужен трансформер, который позволит добавить к логике в виде последовательности действий добавить точки передачи управления вызывающей стороне с передачей туда информации о прогрессе или типа того. В принципе эта херня подойдёт https://hackage.haskell.org/package/monad-coroutine, но возможно есть что-то более общеупотребимое.
#KUX5RV (13) / @ndtimofeev / 1141 день назад
Разобрался с haskell-language-server. Разумеется ему для полного счастья нехватало специального файла описывающего проект (hie.yaml). Если зачем он нужен в принципе понять можно, то вот зачем он необходим с учётом того что весь этот цирк умеет сам находить корень довольно заковыристых проектов и есть тулза генерирующая это самое описание на основании информации для сборки проекта понять уже трудно. Также это не позволяет использовать hls вместе со standalone файлами (тот же clangd прекрасно подсасывает стандартную библиотеку в этой ситуации) и ghci-скриптами. Беда.
#B31IXH (3) / @ndtimofeev / 1207 дней назад
Как попросить ghci нормализовать сигнатуру, в которой присутствуют типо-синонимы и типо-семейства?
#5TP2UE (0+2) / @l29ah / 1286 дней назад
Есть у меня два гетеросписка: один мужественный на GADT'ах с Nil'ом и вот этим вот всем, а второй гейский вида data Cons a b = Cons a b. Как бы мне их терминалогически различать?
#Y6OQZK (0) / @ndtimofeev / 1485 дней назад
Допустим у нас есть библиотека реализующая некоторые статистические инварианты (например библиотека регионов). Допустим я хочу написать тест, который покажет мне что они всё ещё выполняются в соответствии с исходной идеей. Проблема в том, что результатом тестирования должна быть ошибка компиляции. Есть какие-то хорошие решения для прокручивания этого к cabal'у?
#LBVI4C (4) / @ndtimofeev / 1488 дней назад
Ёб твою мать. Я продал программу на хаскеле.
#MP9I0X (3) / @ndtimofeev / 1488 дней назад
У меня такое ощущение что в ubuntu проект собранный при помощи cabal new-install собрался без поддержки -threaded. Что нажать чтобы исправить? А то у меня сервант ставит опердень раком.
#48LI3C (6) / @ndtimofeev / 1515 дней назад
А :quit из ghci-скрипта не работает из каких-то разумных соображений или просто из ненависти ко мне?
#801VY9 (2) / @ndtimofeev / 1516 дней назад
https://thenewstack.io/which-programming-languages-use-the-least-electricity/ хаскель неэкологичен и, следовательно, нерационален
#49EAC0 (2) / @anonymous / 1522 дня назад
В программе space leak, но как искать его непонятно: ghc'шный профайлинг говорит, что всё занимается PINNED-памятью (поскольку я оперирую в основном ByteString'ами), и никаких подробностей о том, где она выделена, и что её держит, не говорит -- https://gitlab.haskell.org/ghc/ghc/-/issues/7275 Как обычно в таких случаях, алгоритм по-хорошему должен в константной памяти работать, но вместо этого память жрётся и жрётся в ходе работы программы, освобождаясь только в конце. https://github.com/l29ah/hyborg/blob/master/Main.hs#L115 Есть ли варианты лучше, чем бинарный поиск по коду методом комментирования? Кажется, в случае хаскеля это вообще так себе метод поиска утечек, поскольку в случае когда мы комментируем какого-нибудь потребителя данных, мы можем ненароком внести ещё один space leak, например когда большой thunk вычисляется по ходу итеративного алгоритма в компактный результат, либо это вычисление откладывается до самого конца, накапливая большие thunk'и в памяти.
#EHQXOU (6+2) / @l29ah / 1537 дней назад
https://github.com/ndmitchell/record-dot-preprocessor вменяемый синтаксис для рекордов в хаскеле, дружит с DuplicateRecordFields.
#SUUP8A (20+1) / @l29ah / 1583 дня назад
Обнаружил что заебался с однопоточностью тормозной питонопараши и начал переписывать borgbackup на хаскеле. Уже научился пиздеть с удалённым сервером борга и читать метаданные репозитория и архивов, надеюсь на следующей неделе забекаплю уже чонить. https://github.com/l29ah/hyborg
#X332M2 (7+2) / @l29ah / 1610 дней назад
ipv6 ready BnW для ведрофона BnW на Реформале Викивач Котятки

Цоперайт © 2010-2016 @stiletto.