Kirill
Prezi на сайте эльма упомянут
Если я правильно помню прези первые подкинули бабла Czaplicki, он там по началу эльм пилил (ну после защиты своего тезиса)
Евгений
Кто-нибудь знает, где хозяин https://github.com/freebroccolo/docker-haskell обитает? Запилил пул реквест с 8.4.2 и хочу, чтобы его приняли
Kirill
вроде твиты свежие - https://twitter.com/freebroccolo, может адресно в PR пнуть?
Alexander
я напишу как будет
Евгений
Воу, чую нужно будет докерхаб заводить
Alexander
у нас ребята туда полгода назад патчи слали 0 реакции
Alexander
я им тут напишу что в наше комьюнити беспокоятся
Kirill
@qnikst Дэрин умер или проект?
Alexander
не он жив вроде в твиттере постит
Alexander
вроде он в окамл ушел больше
Alexander
не факт что докет контейнер поддерживает, во всяком случае пул реквесты не особо принимает
Kirill
чего только не случается с людьми...
Alexander
в твиттере не знаю пытались ли связываться
Alexander
я недавно наткнулся на проект где разраб умер :/
Alexander
inlice-clr вроде
Alexander
там другой подхватил
Alexander
инфа про первого в шапке readme
Евгений
не факт что докет контейнер поддерживает, во всяком случае пул реквесты не особо принимает
Попробую завтра в твитторе тогда написать, если не ответит, то по уму переделаю всё
Евгений
С CI'ем и аргументами
Dmitry
А подскажите, чем быстрее всего в файл дописывать числа? Надо записать одно 16-и битовое число и два 64-х битовых. Сейчас делаю через ByteStringBuilder: int16Host a <> int64Host b <> int64Host c, но есть подозрение, что это не самый быстрый вариант...
Dmitry
Сильно. В БД по сокетам значительно быстрее записывается
Taras 🦀
рребят, как в хаскеле с нейронками? много всего разного, по сравнению с эрлангом, где один-два инструмента и только?
Alexander
...А унутре у ней нейронка...
Nikolay
Есть чатик по нейронкам. Может тебе лучше там спросить. В основном фрэймворки нейронок на питоне. Керас, например.
parket
Не являюсь специалистом по нейронкам, так, знаком в общих чертах. Но неужели сложно с нуля написать?
Taras 🦀
Есть чатик по нейронкам. Может тебе лучше там спросить. В основном фрэймворки нейронок на питоне. Керас, например.
это само собой размышляю об ограничениях эрланга и вариантах куда и как дальше двигаться 😉
Nikolay
С нуля писать можно было лет 10 назад. Сейчас в том же керасе полно моделей . И какой не июль канонический пример на набережная мнист займёт всего 10 сток кода и 30 минут разработки
Alexander
fast-builder в последнем бенчмарке дал лучший результат
Cheese
может, тогда какой-нибудь сопроцедурный движок нужен типа conduit/pipes/streaming?
Dmitry
Да, посмотрю
Cheese
о, у fast-builder есть возможность писаться сразу в файл — hPutBuilder
Dmitry
А вот если надо переменную в разных потоках инкрементировать, есть что-то эффективнее IORef и atomicModify?
Dmitry
Обычный Int
Leonid 🦇
Смотря сколько потоков
Dmitry
По потоку на ядро, 8-16
Leonid 🦇
прокатит. Вообще была либа с атомиками
Alexander
Задача инкрементить одну переменную в разных потоках странная, но именно такой тест был бы полезен для замера производительности STM и MVar.
Cheese
эффективнее вроде некуда
Cheese
кто-то замерял, TVar оказался самым медленным для одной переменной
Alexander
Так и должно быть
Alexander
Если без конкаренси, то я бы ожидал: IO Ref < MVar < TVar
Cheese
самым быстрым — то ли atomicModifyIORef, то ли внезапно Vector.Stored из одного элемента
Alexander
Кажется, не хватает inline-c, @qnikst , это возможно?
Alexander
И еще вопрос. Можно ли работать с анбокснутым Int?
Alexander
Vector будет самым быстрым
Alexander
можно
Alexander
вектор совсем не внезапно, там же тупо запись в память, а вотличии от CAS в IORef
Alexander
inline-c будет дороже
Alexander
о кстати отличная идея для бенчмарке, который я давно хотел написать, спасибр
Alexander
😊
Alexander
Коллективный разум чатика, к тебе взываю. Можешь предложить набор тестов, который бы измерял адекватность поведения STM? Я бы хотел свою либу поизучать.
Alexander
Сравнить ее со взрослой STM
Anonymous
что если взять 10-ю главу книжки Simon Marlow (STM) и прогнать примеры оттуда
Alexander
тесты или бенчмарки?
Alexander
для тестов можно посмотреть тесты в пакете stm
Alexander
ещё там бенчмарки для каналов есть
Alexander
тесты или бенчмарки?
И то, и другое нужно
Alexander
https://github.com/haskell/stm?files=1
Alexander
тесты в каталоге tests
Alexander
бенчмарки в benchmarks
Alexander
но бенчмарк там не убедительный для сравнения имхо
Alexander
@qnikst А ведь и правда. Как же я сам не догадался. Спасибо!
Alexander
для хорошего бенчмарка неплохо бы прогонку каких банковых транзакций проделать
Alexander
там и простая работа с тварями и ретраи
Alexander
Тот самый скалист tpolecat, которого я упоминал выше, придумал делать STM на free-монадах 2 года назад. Я когда свою либу изобретал, про это не знал. Но краткая инспекция его кода показывает, что там что-то не то с резолвингом конфликтов. Я его просто не вижу. Поэтому я сильно сомневаюсь, что его "STM" настоящая STM. И вот хотелось бы составить типовой набор тестов, на которых можно всякие разные реализации гонять и видеть: такой-то тест-кейс поддерживается, а вот здесь либа врет и ведет себя неадекватно. https://github.com/tpolecat/examples/blob/master/src/main/scala/eg/FreeSTM.scala
Anonymous
А там есть? Возьму, конечно
не тесты в явном виде, а рассматривая шаг за шагом гарантии, которые предоставляет STM
Anonymous
за аву бить не будете?
Ilya
Решил освоить stack: сделал stack new, закинул файлы своего проекта в src, пытаюсь сделать stack build Could not find module ‘Data.Sequence’ Use -v to see a list of the files searched for. | 5 | import Data.Sequence (Seq) | ^^^^^^^^^^^^^^^^^^^^^^^^^^ что не так? делал stack install containers, вроде установлено
Ilya
до этого пользовался только чистым cabal...
Alexander
Бывают такие периоды, когда ты физически ощущаешь, что твои когнитивные способности на несколько десятков процентов снижены. Вот и сейчас я чувствую, что в мозгу очень мало пространства, разные понятия не настолько богаты, и в целом смотреть на код сложно. Мысль ускользает. Но это не мешает писать код на Haskell, руководствуясь только тем, что говорит компилятор. И, в общем-то, получается. Добавляю тесты и комбинаторы, они работают, как и ожидается.