haskellru | Unsorted

Telegram-канал haskellru - Haskell

1756

https://combot.org/chat/-1001043143583 Ссылки на полезные ресурсы: https://ruhaskell.org/links.html ; Информация о мероприятиях: https://gist.github.com/qnikst/a96cac661be80d126d0829f2ced1916e

Subscribe to a channel

Haskell

Вызываешь релиз руками, иначе ошибка типов

Читать полностью…

Haskell

Я понял, там хранилище сейчас открытых ресурсов ипа ReaderT или что-то такое

Читать полностью…

Haskell

Я не совсем правильно выразился, оно сделано по подобию ресурст, но не использует ресурст

Читать полностью…

Haskell

Внутри же там по сути resourcet

Читать полностью…

Haskell

Там только поиски, построчные чтения и т.д.

Читать полностью…

Haskell

Вообще кстати hGetContents из linear был бы норм, там хотя бы семантика в типах видна была

Читать полностью…

Haskell

Всё что за что ленивое IO ругают в нём есть

Читать полностью…

Haskell

Единственный спосб сделать liftIO в этом апи это создать фейк ресурс

Читать полностью…

Haskell

ну, я отвечаю на concern, что BL.hGetContents имеет неочевидное поведение и что хорошо бы его поменять.

Читать полностью…

Haskell

Ну, можно класть, но все вычисления внутри должны быть. Но там легко ошибиться. Так, то для ленивого или ForeignPtr надо или ресурсы разных видов, linear, resourcet, etc

Читать полностью…

Haskell

У него был !h <- sha1 . toLazy . hGetContents

Читать полностью…

Haskell

я не разбирался, там вроде какие-то пляски с QualifiedDo и https://hackage-content.haskell.org/package/linear-base-0.5.0/docs/System-IO-Linear.html нужны

Читать полностью…

Haskell

https://hackage-content.haskell.org/package/linear-base-0.5.0/docs/System-IO-Resource-Linear.html

Читать полностью…

Haskell

Хотя не правильно посчитал, на Elixir это вместе с данными, там mp3 файлов на 7 Мб, так что не сильно больше.

Читать полностью…

Haskell

так что даже не меняя язык размер проекта сравним с полны переписыванием

Читать полностью…

Haskell

А что по выходу из скоупа, или из него не выйти (как с IO)?

Читать полностью…

Haskell

Да, чтоб в случае исключения всё закрыть, вот тут я про это писал

Читать полностью…

Haskell

А à-la resource-там там чтобы в случае исключения всё прикрыть?

Читать полностью…

Haskell

Из интересного: запуск ресурс ио закрывает ресурсы как onError, а не как finally, позволя убрать дерганье словарика с релиз ключами на выходе, если не было исключения

Читать полностью…

Haskell

hGetContents-то линейная база и не определяет😅

Читать полностью…

Haskell

я, честно говоря, linear-base никогда не использовал. хорошо бы какие-то части его в base засунуть, хотя бы этот вездесущий Ur.

Читать полностью…

Haskell

Но да, hGetContents вообще там себе история и для LBS и string

Читать полностью…

Haskell

Там в апи этой самой монады рио проблема, лифт ио это всегда ансейф и даже ручки для "лифтани ио, без муток с ресурсами" нету

Читать полностью…

Haskell

resourcet и etc тут правда не помогут

Читать полностью…

Haskell

верно, см. дальше в моем сообщении, что это маргинальный случай. обычно lazy IO под брекет не кладут.

Читать полностью…

Haskell

Не, у него не убегал (я по кода думал, что убегает), у него там строгий консьюмер

Читать полностью…

Haskell

Она не позволяет вызывать ио внутри себя, только работу с ресурсами дозволяет, мне это не понравилось

Читать полностью…

Haskell

Я бы хотел линейный апи для этого добра, чтоб хендлер пожирался гет контентом или результат становился бы линейным внутри колбека бракета. Но линейный апи это всё ещё боль, т.к. нет линейных констреинтов, а их обсуждение уже два года на одном месте

Читать полностью…

Haskell

Для сравнения, на Nim получается бинарник 1 Мб (сборка быстрая и удобная под разные платформы и с нужными glibc), на Elixir архив порядка 10 Мб, это с его виртуальной машиной, и beam файлами (сборка не удобная, под Arm приходится на Arm собирать, но разрабатывать удобно, быстрая компиляция через recompile без потери состояния запущенного проекта), на Haskell ещё не смотрел, но вроде обнадёживающе, хотя уже видно, что размер бинарника будет больше, чем на Nim.

Читать полностью…

Haskell

Там в любом случае перетаскивать, там они на sympony второй версии, кажется она deprecated уже больше лет 10

Читать полностью…
Subscribe to a channel