Anonymous
ооо
Nikolai
а есть у кого Haskell-related стикер пак?
Nikolai
или самому надо учиться делать стикер паки?
Cheese
Nikolai
у меня есть из LYAH
Cheese
но лучше сделать ещё
Nikolai
Nikolai
спасибо
Denis
Nikolai
мне сложно даётся свободное общение в сети :(
Denis
а вы замечали что в хаскельных чатах поминают хотт в таком же контексте как монады у всяких фронтендеров?
Nikolai
хм, вроде нет
Denis
(как подростковый секс)
Anonymous
Евгений
Nikolai
когда уже HIT будут продакшон реди? :(
Anonymous
Kirill
а если есть ThreadId (и не контроля за тем как он форкается), то понять живой ли он можно только через threadCapability?
Alexander
метод есть чтобы состояние посмотреть
Nikolai
но я вам его не скажу
Kirill
Но мы его вам не скажем? :)
Nikolai
у вас документов нету
Nikolai
печкин.жпг
Alexander
сейчас включится хакадж
Alexander
будто я на память помню
Leonid 🦇
у вас документации нету
Kirill
а, нашёл, threadStatus
Alexander
да оно
Dmitry
поделитесь, кто-то еще использует transient вместо async и как оно вам?
Kirill
а вы используете?
Leonid 🦇
есть еще async lifted
Kirill
@qnikst а ты не в курсе setUncaughtExceptionHandler даёт какие-нибудь гарантии про асинхронные исключения? Или типа детали реализации и тупо смотрим код?
Kirill
@lonokhov дак онож те же яйца вид сбоку по сути?
Alexander
даёт
Alexander
если тред не ловит исключение то оно туда попадает
Dmitry
Kirill не как замену async
Alexander
async lifted просто лиытнутая версия
Alexander
а транзиент это же про сеть и реплеи и т.п.
Dmitry
там нормально так функций, которые дублируют async и где-то даже удобнее
Anonymous
/stat@combot
Combot
combot.org/chat/-1001043143583
Misha
А как в общем случае понимать, какие IO методы строгие, а какие нет? Вот меня конкретно BS.writeFile интересует — есть сомнение, что он лениво как-то пишет.
Кабачок
Флашить надо.
Кабачок
Причем не только в Haskell.
Anonymous
что такое флашить?
Anonymous
hFlush
Misha
Ок, разумно, у меня даже была несколько раз необходимость руками флаши расставлять.
Misha
ну то есть видимо writeFile из байтстринг фигни недостаточно строгий в этом смысле, он просто делает bracket open close put.
Donat
хотел узнать, а байтстринг можно как-нибудь инкрементить?
Misha
В смысле думать о нем будто там закодирован arbitrary-length число?
Misha
или просто конкретный байт инкрементить?
Donat
Misha
Ну если руками напишешь, то можно
Misha
Кто ж тебе запретит 🌝
Donat
unpack
и лист инкрементить? не совсем понимаю как это можно сделать
Misha
ну я не знаю как (насколько эффективно) написан Ix для байтстрингов
Misha
но кажется им можно пользоваться
Misha
https://stackoverflow.com/questions/33573937/haskell-changing-an-element-at-a-given-index-in-a-bytestring
Anonymous
Donat
Kirill
Arseniy
https://www.reddit.com/r/haskell/comments/7777df/hack_importify_by_serokell_during_hacktoberfest
кана
ого, круто
кана
импорты это везде боль
Alexander
Alexander
вообще hPut делает флаш в конце..
Alexander
а ну в зависимости от buffermode
Alexander
we need to go deeper
Alexander
я про hPutBuf
Alexander
но вообще hFlush лучше всегда делать, чтобы больше гарантий было
Alexander
но все равно там ещё слой OS есть, который не обязывает OS прям вот стразу из буфферов на диск все положить
Alexander
и кеш диска
Alexander
но обычно если мы не предполагаем что ось ребутнётся прям щас, всем пофиг
Alexander
@volhovm я когда делал атомарный hPut для ленивых байтострок, то у меня точно было вконце flushWriteBuffer
Alexander
это буфферы которые гхц-шная абстракция над хэндлами
Alexander
если не block buffering
Alexander
но обычно открывают с block buffering файлы