Leonid 🦇
s & foo ?~ bar # something
Leonid 🦇
а вообще норм выглядит
Maxim
а с _Just скомпозить не выйдет?
Leonid 🦇
хм
Leonid 🦇
я не знаю как
Aleksei (astynax)
https://hackage.haskell.org/package/lens-4.15.3/docs/Control-Lens-Setter.html#v:-63--126- не?
Aleksei (astynax)
Leonid 🦇
Ну так да, там выше так и есть. Я думал можно длинную призму собрать точками. Чтобы жутко красиво
Aleksei (astynax)
получится foo . _Just . bar и вот на _Just всё превращается в тыкву
Aleksei (astynax)
А так то было бы неплохо воссоздавать структуру по длинной призме
Aleksei (astynax)
Да хоть из empty
Влод
Влод
выглядит не очень здраво
Влод
а не. если всё почистить и запустить заново то ок, кажись проходит. классика
Aleksei (astynax)
https://www.stackage.org/lts-12.0
Aleksei (astynax)
LTS Haskell 12.0 (ghc-8.4.3)
Cheese
праздник у нас!
Aliester
чокнемся тайпклассами
Leonid 🦇
Подождём в никспкгс
kosc
А по Idris нет русскоязычного чата?
Viacheslav
есть
Viacheslav
https://t.me/joinchat/Ai4h2D9SWO_RDx2jMUbzqw
kosc
Спасибо!
Aleksei (astynax)
Сделайте уже страничку на ruHaskell/wiki со списком подобных чатиков!
Aleksei (astynax)
Чтобы ссылку давать
A64m
так туда никто не заглянет, а как обычно тут спросит все равно
☻️
Может, бота кто зопилит? Типа: /ide /книжки
A64m
or-паттерны прОклятый пропозал какой-то, пару недель назад я бы сказал что его вот сейчас примут, но нет, все никак не наобсуждаются, 203 - комментария, было бы что комментировать
A64m
к примеру у Quantified constraints 31 комментарий, ну правильно мало кто понимает что там и как надо/не надо делать еще отличный пример того в чем все разбираются - ORF, там сотня комментариев, но или паттерны его давно обошли, конечно
A64m
(правда, если бы линейные типы были одним пропозалом а не двумя - у или было бы второе место только)
A64m
линейные типы, кстати, стал обсуждать комитет и там пока более-менее реалистические идеи на этот счет (пока не попробуешь - не узнаешь)
саша
линейные типы, кстати, стал обсуждать комитет и там пока более-менее реалистические идеи на этот счет (пока не попробуешь - не узнаешь)
<troll> Это хаскелевый коммитет начал обсуждать? Это что, в хаскель перфоманс завезут теперь? </troll>
A64m
не хаскельный, а гхц-ный
A64m
хаскельный комитет это полностью бесполезная организация, вся деятельность которой сводится к ротации комитетчиков и анонсам планов (редким), тут кстати, есть один комитетчик оттуда - @bravit111
Vitaly
+1
саша
а у хачкеля/гхц есть какой-нибудь отлаженый RFC процесс, или ребята просто собираются по определённым датам и говорят по душам?
Vitaly
Я на fpconf полтора года назад рассказывал, чем должен этот комитет заниматься и почему у него ничего не получится
A64m
по поводу перформанса, особого импакта на перформанс не будет, все равно основной способ управления памятью в сколько угодно дальней перспективе в гхц будет ГЦ
IC
можно как-нибудь в модуле сказать, что все топ-левел функции в нём имеют HasCallStack => ... ?
Leonid 🦇
что, компакты уже можно объявить провалом?
саша
типа весь профит лишь в том, чтобы детектить не реюзабл ресурсы?
A64m
а у хачкеля/гхц есть какой-нибудь отлаженый RFC процесс, или ребята просто собираются по определённым датам и говорят по душам?
предложения субмитятся сюда https://github.com/ghc-proposals/ghc-proposals/ после открытого обсуждения отправляются комитетчикам, которые в рассылочке его пообсуждают и (не) примут
A64m
регионы-то в фя не работают
A64m
потому как и в мл-ките пришлось ГЦ делать
Leonid 🦇
Ну а разве это нельзя назвать "управление памятью"?
Leonid 🦇
считай арена
Антон
Ну а разве это нельзя назвать "управление памятью"?
Возможность объявить структуру в памяти монолитной для сборщика мусора сложно назвать средством управления памятью
саша
чот тёплое с мягким, не?
Leonid 🦇
а что вам ещё надо то?
Антон
а что вам ещё надо то?
В идеале — чтобы сборщик мусора вообще не требовался
Leonid 🦇
ну ну, удачи
саша
типа весь профит лишь в том, чтобы детектить не реюзабл ресурсы?
видимо вот это, если профитов по перфомансу не будет
Leonid 🦇
/me хочет виртуальную память в юзерспейсе
саша
В идеале — чтобы сборщик мусора вообще не требовался
Та ну зачем, сборщик мусора хорошо подходит для многих задач. Но всё же иногда конечно хочется и вручную памятью порулить и ленивость отрубить.
Leonid 🦇
FFI в руки и вперда
саша
FFI в руки и вперда
а вот об FFI мараться не хочется
Leonid 🦇
вам шашечки или ехать?
Leonid 🦇
надо {-# BEGIN STRICT #-} {-# END STRICT #-}
A64m
ну для модуля меняются умолчания с аннотирования строгости на аннотирование ленивости
Антон
Давайте я чуток наброшу — в Rust есть crates.io/crates/im — сборник персистентных иммутабельных структур данных. Отличается тем, что при модификации проверяется, что данными владеет один тред, и в случае, если это так, модиифицирует данные in-place вместо создания изменённой копии
Leonid 🦇
и как там с Box?
Антон
и как там с Box?
То есть? Там не Box, там Arc-и
Евгений
Как там с Rc?
Евгений
Лучший GC в мире (нет)
Антон
Как там с Rc?
Никак, Rc потоконебезопасен
Евгений
Я начал писать раньше чем ты ответил :(
Leonid 🦇
Рц это управление памятью теперь?
Евгений
Я подозреваю, что нужен тьюринговский оракул, чтобы чтобы сделать рекурсивные типы без GC
Евгений
Счётчик ссылок -- примитивный GC
Leonid 🦇
Malloc это уже не руками. Вот. Mmap ещё может быть
Антон
Счётчик ссылок -- примитивный GC
Не совсем. Подсчёт ссылок даёт предсказуемую деаллокацию, в отличие от
Евгений
Подсчёт ссылок это рантайм, в отличие от регионов