Aliester
Aragaer
мне нравится экосистема си
Aragaer
открыл текстовый редактор, написал код и мэйкфайл, победа
A64m
там экосистема как на луне
Aliester
бевоздушная
Aliester
и последние новости были в конце семидесятых
Anonymous
понятно, что для иде нужны и парсер и тайпчекер из компилятора, речь о том, что именно оптимизированный под иде парсер это то, что можно отложить пока не решены более важные проблемы
Typechecker можно отложить, поскольку типы можно проверять редко. Без парсера "удобства" будут "на улице". Парсер может быть упрощённым. Но он необходим. Без него AST не получить. А без AST содержание файла ~ текст.
A64m
так я и говорю, понятно, что нужен. А без тайпчека в языке с перегрузкой по типам даже навигацию по коду не сделать
Anonymous
так я и говорю, понятно, что нужен. А без тайпчека в языке с перегрузкой по типам даже навигацию по коду не сделать
Для навигации разве нужен typecheck? Вот этой библиотеки достаточно для навигации: https://hackage.haskell.org/package/haskell-names Можно пытаться обойтись и без неё, но она работает хорошо.
Anonymous
может, мы под навигацией подразумеваем разные вещи
A64m
нет, она не работает хорошо
A64m
ну вот снавигируйте по каждому fmap без тайпчекера (fmap `fmap` fmap) (+1) (3, Just 4)
Anonymous
Найти, где используется fmap?
Andrey
тут намекают что разная семантика одних букв
A64m
где определен инстанс, где используются такие же инстансы
Anonymous
А, это продвинутая навигация
A64m
ну понятно что не про ctags речь
Anonymous
А есть либа, которая вникает в такие детали?
A64m
нет
Anonymous
такая навигация - если будет возможна - может тормозить подстать времени компиляции.
A64m
тайпчек не самое тормозное во времени компиляции
Anonymous
Ну да, парсинг и оптимизация + машинный код идут долго. Тогда ошибки видны после паузы из-за чего: парсинга? Ведь оптимизация не начинается до окончания проверки типов?
A64m
парсинг быстрый
A64m
так обычно и паузы особой нет. Конечно она бывает из-за макросов или каких-то адовых тайплевел вычислений
Anonymous
Есть же ещё и зависимости..
Anonymous
Компилятор кажется думает, прежде чем ругнуться
Anonymous
тайпчек не самое тормозное во времени компиляции
Открыл для себя ghc -fno-code file.hs https://stackoverflow.com/questions/12373722/make-ghc-only-type-check Получается, можно обойтись без ghc-mod?
Cheese
если не надо видеть в редакторе результат, то можно без
Andrei
Как православнее деплоить вебсервис на Haskell в Heroku? Реквестируется кошерный билдпак или контейнер.
Aleksei (astynax)
Просто собрать бинарь. Хероку умеет такие запускать
Andrei
Просто собрать бинарь. Хероку умеет такие запускать
Спасибо за идею. Да, нашёлся https://github.com/ph3nx/heroku-binary-buildpack, но это же придётся бинарник под контроль версий класть. Также сомневаюсь, что у меня версия glibc, не большая той, что крутится в виртуалках Heroku (это если рассчитывать на обратную совместимость). Разве что локально собирать проект в контейнере cedar или что там у них.
Aleksei (astynax)
Можно собирать статический бинарник на libmusl
Cheese
можно класть бинарник в гит в отдельную ветку из 1 коммита и каждый раз пересоздавать его. гит будет вычищать старые версии автоматически
Cheese
например, я так сделал для сайта сообщества https://github.com/ruHaskell/ruhaskell/blob/master/deploy.sh
Aleksei (astynax)
Лучше не класть бинарники в github. В свой git можно. А в github - не очень красиво
Mi Shа
Лучше не класть бинарники в github. В свой git можно. А в github - не очень красиво
Гитхаб вроде планировал сделать что-то для хранения артефактов и больших файлов?
Ignat
LFS?
Aleksei (astynax)
source control всё же
Leonid 🦇
гитхаб будет теперь всё делать платное. Он же всё еще считается стартапом и не приносит прибыли.
Aleksei (astynax)
Ну и норм. Artefactory всякие на этом зарабатывают, пусть и github заработает немного. А то превратили сервис для работы с кодом в файлопомойку
Leonid 🦇
а часики то тикают
Aleksei (astynax)
Это да
Cheese
а у Хероку какие ограничения? там только через vcs деплоить можно?
Cheese
Лучше не класть бинарники в github. В свой git можно. А в github - не очень красиво
чем мой гит хуже гитхаба? и почему я не могу репозиторий на гитхабе считать своим?
Kirill
и сделал. платное.
в небольших объёмах бесплатное, как обычно первая доза бесплатно
Aleksei (astynax)
@cblp_su Ты у себя можешь поддержку больших файлов прикрутить, это "а". Ну и "б" - ты сам платишь за свои "несорцы"
Cheese
не вижу, чем плохо хранить 1 копию бинарника в отдельной ветке
Cheese
Хероку поймёт, если ты у себя LFS прикрутишь?
NC
Я как-то проспал 8.4.1-rc1
NC
Есть насчёт чего волноваться или нет?
NC
Судя по всему единственной фичей, кроме багфиксов, это бэк LLVM на 5ую версию переехал
Aleksei (astynax)
не вижу, чем плохо хранить 1 копию бинарника в отдельной ветке
Бинарники для Хероку точно будут перевыкладываться постоянно
Aleksei (astynax)
Да и одна копия бинарника в десятки мегабайт в репе с сорцами моё чувство прекрасного задевает
Andrei
удваиваю
Leonid 🦇
https://twitter.com/backendsecret/status/968041992293842945 Охтыжнихренасе
Aleksei (astynax)
После Егорки - особенно неожиданно :)
Anatolii
Я хотел на той неделе уже отписаться
Leonid 🦇
там и после Егорки были интересные кадры
Anatolii
хорошо что не отписался:)
Leonid 🦇
/me и не подписывался
Igorek
посоны, налетай. рестартанули второй курс по хаскелю https://stepik.org/course/693/syllabus
A64m
Судя по всему единственной фичей, кроме багфиксов, это бэк LLVM на 5ую версию переехал
я 6-ю (ну не зарелизенную версию, но близкую к тому) пробовал с 8.2 вроде все работало
A64m
с бетами 8.4 тоже
A64m
Судя по всему единственной фичей, кроме багфиксов, это бэк LLVM на 5ую версию переехал
но вообще да, это РЕЛИЗ БЕЗ ФИЧ, гхц-комитет отлично сработал
NC
Последний раз пробовал ещё с 8.0, LLVM просто не работал
NC
хм, т.е. в целом миграция на новую версию должна быть безболезненной
A64m
не факт
М
кто-нибудь работал с Ethereum из хаскеля?
М
вызов функций смарт-контракта и тп
Denis
я работал, ЯП тут мало роли играет
Denis
вроде да