Слава
через лямбды?
Нет, вряд ли. Это до лямбд было, давно.
Andrey
итераторы? ну в каком-то смысле можно их так абстрагировать, хотя у меня это полноценные иммутабельные структуры данных. я ни в коей мере не агитирую смотреть мой стрим в чате хаскелистов - здесь же все самые-самые умные, просто ваш имхо спорный тезис не мог оставить меня равнодушным )
Andrey
Алистер - да, через них, родимых
Andrey
Да, вы правы и проницательны - это именно вентиллятор системника. Но по сравнению с плохим качеством видео это имхо не такой серьезный недостаток. А видео такое от максимально заниженных параметров стрима - больше мой комп не тянет физически без зависаний и лагов
Bogdan
лучше конечно если сами подробнее расскажут
Мы с удовольствием расскажем. Сегодня умышленно не рассказывали, так как не хотели отвлекать от лекции Виталия Брагилевского
Alexander
точнее в последнее время на слуху, но мало кто знает что там делаете :)
Cheese
о!
Pavel
Что касается Биокада, мы действительно не хотели вчера агрессивно пиариться, показалось это неуместным на фоне интересной лекции. Но, конечно, про себя можем рассказать, да и вакансий у нас довольно много — это тоже не скрываем. 🙂
Pavel
Про сам Биокад, вроде, можно почитать на сайте. Скажу только, что мы делаем биологические, химические и генотерапевтические препараты в области онкологии и аутоиммунных заболеваний. Департамент вычислительной биологии (ДВБ) в том или ином виде существует уже шестой год. Наши главные задачи — обработка экспериментальных данных для поддержки принятия решений, а также дизайн лекарственных средств и дизайн экспериментов. То есть мы моделируем биологические системы, смотрим на их поведение и формируем заявки, что нужно поставить в мокрых лабораториях, чтоб проверить наши вычисления.
Pavel
В связи с этим у нас разношерстная команда из химиков, биологов, физиков, математиков и программистов. Часть людей больше задействована в продуктовых проектах, а часть больше разрабатывает системы и алгоритмы для коллег. Но так или иначе чем дольше люди работают, тем больше они понимают в обеих вещах.
Pavel
По разработческим задачам, мы разрабатываем инструменты в области фолдинга и докинга белков и малых молекул, проведения структурных мутаций, оценки свободной энергии связывания, предсказания течения реакций, моделирование кинетических и динамических свойств лекарств в организме и многое другое. Это предполагает знание и использование классических алгоритмов теоретической информатики, вычислительной геометрии, теории оптимизации, немного машинного обучения (не приживается оно у нас пока сильно), методов вычислительной термодинамики и т.д.
Pavel
Все это мы второй год пишем на Haskell и CUDA C (до этого была 4 года Scala с которой мы в ужасе свалили и теперь можем вести конференции типа Do not use Scala in non-IT company). У нас кастомные stack-snapshots и CI/CD (TeamCity), который позволяет всем этим хозяйством гибко управлять. В работе активно используются графовые базы данных (neo4j). Развернута вся система как сеть микросервисов, общающихся сообщениями по единому стандартизированному протоколу через одно место — внутренняя очередь сообщений (Haskell + ZeroMQ). Как-то так.
Pavel
А, у еще у нас самый большой в стране частный GPU-кластер, в котором в том числе есть Вольты (Tesla V100).
Kirill
Про скалу делитесь, конечно
Alexander
спасибо за развернутый ответ!
Pavel
Про скалу делитесь, конечно
Если в одной фразе, то «на Scala слишком просто писать очень плохо». Подробнее можем как-нибудь потом.
Kirill
Отлично
Pavel
Тут есть @bog2dan и @Fonturacetamum из ДВБ, уверен, они по повседневной жизни биоинформатика (или вычислительного биолога) хаскеллиста расскажут лучше всех, если их спросите. :)
Dmitry
"слишком плохо на скала" = обычная java ?
Aleksei (astynax)
Лол. Я в Биокад собеседовался лет пять назад на Скалу как раз. Если бы пошел, то сейчас бы на хаскеле писал.
Aleksei (astynax)
Правда я сейчас на хаскеле и пишу. Так что эта пуля меня не миновала :)
Denis
Тут есть @bog2dan и @Fonturacetamum из ДВБ, уверен, они по повседневной жизни биоинформатика (или вычислительного биолога) хаскеллиста расскажут лучше всех, если их спросите. :)
А вы кандидатов тоже показательно игнорируете, наверное? У меня после общения и его резкого прекращения с вашей стороны, о вас и биокаде исключительно неприятные воспоминания.
Leonid 🦇
Я думал Haskell + zeromq = боль и страдания
Bogdan
Я думал Haskell + zeromq = боль и страдания
Да нет, вполне. Библиотека zeromq4-haskell даёт хоть и неполное, но достаточное покрытие функционала для работы с zmq
Leonid 🦇
Хм, я был уверен что Zmq совсем не тредо-безопасны и на хаскельный рантайм не ложится. @qnikst поясни
Alexander
боль и страдания, но можно извернуться
Alexander
так, у меня тут factorio, потом подробнее напишу
Dmitry
Хм, а разве Haskell не достаточно? Нужно ещё и в игры играть!?
Alexander
так, у меня тут factorio, потом подробнее напишу
Чорд, в чате же есть другие ФакториоНаркоманы, зачем провоцировать рецидив?
Alexander
Хм, а разве Haskell не достаточно? Нужно ещё и в игры играть!?
ребетёнку в haskell рановато, а в факторию по сети норм :)
Alexander
Я бы пообсуждал возможности Факторио по созданию процессоров
Alexander
5.8
Alexander
И вообще программтрования штук в нем
Aliester
5.8
звучит как версия
Leonid 🦇
Жду сетевой stardew valley
Aliester
а вы по семантическом версионировании идете?
IC
People Versioning Policy
Alexander
с zeromq если аккуратно работать с сокетами и не очень много сообщений из кусков состоящих писать то норм
Alexander
ну кроме того что евент лупы не интегрированы
Alexander
особенно если использовать tcp backend
Alexander
вон в network-transport-zmq у меня все работало
Alexander
но если вылезти из приятной части то все плохо
Denis
Друзья, вопрос. Вот есть автоген-модуль Paths_*, из которого,в частности, можно вытащить version (которая из конфига проекта берётся).
Denis
А можно ли сделать так, чтобы из этого автоген-модуля можно было вытаскивать и другие параметры из конфига?
Denis
скажем, github-репозиторий
Denis
или email автора
Denis
Я вижу там только это: version, getBinDir, getLibDir, getDynLibDir, getDataDir, getLibexecDir, getDataFileName, getSysconfDir
Denis
А ничего другого никак нельзя?
Alexander
руками в Setup.hs только
Denis
погоди, не понял
Denis
как это?
Denis
пример есть?
Denis
а, уже понял
Denis
не, это не то. Я думал, что можно автоматом из конфига брать. Вообще странно, почему он одно поле может вытащить, а другие не может...
Alexander
потому что оно не из конфига
Alexander
этот файл генерится раньше кабалом, а теперь ghc
Denis
ну да
Denis
но откуда там значения?
Denis
они же из моего конфига, верно?
Alexander
на основе конфига, да
Alexander
если про version
Denis
Ну вот. Почему же он не может взять значения других полей из конфига?
Denis
:-)
Alexander
ну и getDataFileName
Alexander
а остальные не из конфига
Alexander
вообще если у тебя зареген пакет, то наверняка можно прочитать всю эту инфу, но боюсь на гхц надо зависеть
Alexander
ну или руками ghc-pkg вызывать
Alexander
но это если зареген, а так или issue на кабал/гхц или самому Setup.hs и взять все нужные поля
Denis
ок, спасибо
Anonymous
Кажется, .cabal можно читать вот так: readGenericPackageDescription Из https://github.com/haskell/cabal/blob/master/Cabal/Distribution/PackageDescription/Parsec.hs
IC
Можно и без парсека, там есть публичный интерфейс в духе "считать из файла и распарсить"
Alexander
в Setup.hs сделать хук и получить все в распарсенном виде, данные записать в автоненерированный файл, его в exposed-modules
IC
Или через TH обычным модулем.