Зигохистоморфный
есть еще это https://github.com/Thimoteus/purescript-infinite-lists но тут нет all
A64m
SMP?
ну вот в каком-нибудь F# Lazy надо тредсейф делать, а в окамле, ну и соотвественно V8 не надо, незачем просто
Зигохистоморфный
https://github.com/robertmassaioli/purescript-infinite-list
Cheese
надо где-то хранить небольшое состояние между запусками одной процедуры. желательно и между запусками любых программ, включающих эту процедуру. не хочу привязывать библиотеку к какому-то конкретному решению, а просто принимать структуру Var{read :: a -> IO, write :: IO a}, чтобы приложение-пользователь само подсунуло IORef, TVar, файл или acid-state. может, этот велосипед уже кто-то изобретал и для него есть стандартный интерфейс?
Alexander
а только меня бесит что stack криво парсит .cabal файлы?
Cheese
разве он парсит?
Cheese
Cabal их парсит
Alexander
нет
Alexander
иначе бы не было проблемы с herbert operator
Alexander
и прочим
Alexander
ну и cabal-install парсит, а stack нет
Cheese
криво интерпретирует диапазоны версий?
Alexander
если в exposed-modules ставить запятые вконце
Cheese
во стэке может быть не самая свежая Cabal
Alexander
то cabal нормально парсит, а стек вываливается
Alexander
так простите, это я ошибся
Alexander
все норм
Aleksey
а может кто подсказать библиотечку на хаскеле, в которой реализована кластеризация графов?
Aleksey
вроде помнил но забыл
Aleksey
внезапно containers
Alexander
хочется иметь data Unit ['TimeUnit] where Unit :: (Elem x xs, тут что-то ещё) -> Unit xs, как это правильно реализовывать
Alexander
где Unit это выбор одного значения из type-level списка
Alexander
в принципе все это синглетоны, но либу тащить не хочется очень
Alexander
как это правильно реализовывать
A64m
во всяких библиотеках для рекордов обычно есть такая штука
Alexander
как set? разве что в generic sop видел
Alexander
я сейчас сделал хак, но мне он не нравится
Alexander
@A64m_qb0 а у нас что-нить для рядового полиморфизма хорошее есть?
Cheese
рядного
Alexander
рядовой веселее
Alexander
так же как и хацкель
Alexander
но да, так не надо говорить
Aliester
Рядовой Полиморфизм, выйти из строя
Anonymous
Кстати, Хаскель - это имя учёного
https://en.m.wikipedia.org/wiki/Haskell_Curry
Зигохистоморфный
Зигохистоморфный
а каррирование на его честь названо) так как он его переоткрыл независимо от Шейнфинкеля
Anonymous
There are three programming languages named after him
- чтоб наверняка уж
Alexander
а allow-lower уже притащили в cabal?
Alexander
или нужно head
Alexander
(cabal-install)
A64m
Alexander
у меня есть серванто-апи, и там 100600 QueryParam
Alexander
и мне не охота его Maybe кормить
Alexander
написать, то я это руками могу, но лень
Alexander
в смысле рядового нашего
A64m
тут рядного полиморфизма мало
Alexander
ну вообще мне достаточно Subset xs ys => Row Maybe xs -> Row Maybe ys
A64m
рядный полиморфизм, это когда одна функция с камим-то разными готовыми рекордами может работать
A64m
а тут какие-то расширяемые рекорды скорее, только в хаскеле они все рабочие на единицах полей только, а дальше адище начинается
Alexander
ну с расширяемыми адище ещё тот, фиг знаешь что использовать и все неюзабельно
adam
imve.informatik.uni-hamburg.de/files/35-EGVE07_FRVR_BlomBeckhaus.pdf
Dmitry
никто не сталкивался с
hasktags: ./**/*.hs: getSymbolicLinkStatus: does not exist (No such file or directory)
Dmitry
причем, в других местах работает ок. что бы это могло быть 👆 ?
Alexander
fs та же?
Alexander
хотя странно
Dmitry
да
Dmitry
то работает, то нет
Dmitry
даже на одном эээ каталоге.
кана
что взять для работы со стримами? Что-нибудь максимально простое, потому что задача простая (разбить список ссылок на чанки, загрузить их с паузой между чанками, получить стрим из респонсов, достать из каждого респонса еще по массиву ссылок и опять загрузить все ссылки по чанкам с паузой). Конкретно раньше из такого работал только с rx/most в js.
подумываю еще о том, что можно акторы взять для этого
Alexander
можно любой streaming
Alexander
авторы козявки!
Alexander
акторы
Alexander
в общем часто из простой задачи сложную делают
Max
Dmitry
не
Max
Хм. Прикольно.
Kirill
@qnikst а forkProcess же по сути запускает ещё один RTS? Я ничего не путаю?
Alexander
да
Alexander
как сишный форк, просто аккуратненький
Alexander
у тебя будет 2 процесса, с n тредами каждый своими rts и менеджерами
Kirill
а оно где-то задокументировано?
Alexander
что?!
Kirill
вот этот факт
Alexander
как именно он форк делает?
Alexander
man 2 fork ?
Kirill
что подымается ещё один RTS
Kirill
или типа это из того что это fork должно следовать, что гц и проч будет отдельное?
Cheese
в чём заключается аккуратненькость?
Alexander
Kirill мне кажется в документации forkProcess все сказано:
> forkProcess corresponds to the POSIX fork system call. The IO action passed as an argument is executed in the child process; no other threads will be copied to the child process. On success, forkProcess returns the child's ProcessID to the parent process; in case of an error, an exception is thrown.
Alexander
@cblp_su стопаем HECs, форкаемся, оставляем только один в GC root, вызваем GC, включаем HECs