
Alexander
25.05.2018
09:10:45
и.е. было S A, а сделать S (B,A)
можно руками написав json но это как-то некруто
хм.. может свой encoding можно
там же расширяемо

Google

Alexander
25.05.2018
09:11:33
и LBS завернуть
сработает?

Anton
25.05.2018
09:14:13
Всем доброго утра/дня! А подскажете как называется вот такая функция в теории категорий?
fork :: (x -> a) -> (x -> b) -> x -> (a, b)
fork f g = \x -> (f x, g x)
(или с этим лучше в теоркатный чатик?)

Timofey
25.05.2018
09:14:52

Aleksey
25.05.2018
09:19:45
Складывание в ~/.stack/compiler-tools/x86_64-linux/ghc-8.2.2/bin/ позволяет переиспользовать во всех снапшотах, которые базируются на этой версии компилятора. Это удобно, когда есть проекты с "соседними" снапшотами

Dmitry
25.05.2018
09:25:49
А hdevtools почему не используется?
@asyntax ^
В твоей схеме
Я прям вообще без hdevtools жить не могу, когда он отваливается (по разным причинам) уровень Haskell-боли на порядок вырастает

Maxim
25.05.2018
09:27:08
а какой от него профит? я его таки смог завести, но не понял зачем

Dmitry
25.05.2018
09:27:11
А, вместо него ghc-mod?

Google

Maxim
25.05.2018
09:27:11
когда уже есть hie
еще бы он не жрал память так много...
правда у меня hie почему-то не хочется дополнять импорты, надо еще разобраться

Dmitry
25.05.2018
09:27:39
Я старовер, я в vim'е

Maxim
25.05.2018
09:27:44
ну так и я в виме
LanguageClient_neovim, deoplete, hie
в неовиме, естественно

Dmitry
25.05.2018
09:28:25
hie -- как плагин к vim'у может работать?

Alexander
25.05.2018
09:28:26

Anton
25.05.2018
09:28:45
ок

Dmitry
25.05.2018
09:28:51
Вижу, может

Maxim
25.05.2018
09:28:55

Dmitry
25.05.2018
09:29:04
Нуу, надо будет на выходных тоже пощщупать

Maxim
25.05.2018
09:29:05
language server protocol, имхо, отличная тема

Alexander
25.05.2018
09:29:08
вообще мне это какой-то энкожинг напоминает типа Scott

Maxim
25.05.2018
09:29:14
MS молодцы, как ни странно

Alexander
25.05.2018
09:29:41
или П-калкулус
но чему это в ТК соответствует и какому пакету кметта я не знаю

Aleksey
25.05.2018
09:33:03
@maksbotan @dmalkr на наших рабочих проектах не работает ни hie, ни hdevtool, ни ghc-mod. ghcid и тот я не смог завести
На хоббипроектах работает intero и мне норм

Google

Dmitry
25.05.2018
09:34:01
Почему не работает, ресурсов не хватает?

Aleksey
25.05.2018
09:34:32
Было бы у меня 16 ядер и 128ГБ ОЗУ, работал бы (но это не точно)
ghc-mod просто не парсит наши исходники

Dmitry
25.05.2018
09:35:08
Жесть

Aleksey
25.05.2018
09:35:20
Потому что haskell-src-exts - говно
Кароч, ошибки у мну подсвечиваются через stack ghc, сбоку в отдельном терминале запущен stack --file-watch, hlint на подхвате. Навигация через etags. Так и работаю.
ошибки проверяются только по save, иначе я бы повесился

Dmitry
25.05.2018
09:37:45
Ошибки через stack ghc -- в редакторе подсветка, или в отдельной консоли?

Aleksey
25.05.2018
09:38:27
Emacs в фоне запускает stack ghc для файла при сохранении. Секунд через 5-10 обновляются ошибки в редакторе

Dmitry
25.05.2018
09:38:42
А, ясно.
Автодополнение есть?

A64m
25.05.2018
09:38:54
вроде же ghc-modу HSE нужен только для того чтоб парсить некорректный хаскель для фичи, которая реализацию-заглушку делает для сигнатуры функции

Dmitry
25.05.2018
09:38:55
Или не нужно?

A64m
25.05.2018
09:39:22
так что дело в другом, наверное
к примеру, ghc-mod не может с vector работать из за сишных макросов

Aleksey
25.05.2018
09:39:55

Dmitry
25.05.2018
09:40:24
А колоризация как делается? Не спотыкается об [xxx|....|] ?

Aleksey
25.05.2018
09:40:26

Maxim
25.05.2018
09:40:55
а вот скажите, в линзах есть такая штука: useM l f = get >>= l f
чтобы в StateT делать так:
useM someLens $ \some -> do ...
эквивалентно zoom someLens $ do some <- get; ...

Google

Aleksey
25.05.2018
09:41:39

Dmitry
25.05.2018
09:43:44
Круто! Надо бы такое для vim найти. А есть какая-то интеграция с haddock'ом? Чтобы смотреть документацию к функциям/типам?

Aleksey
25.05.2018
09:45:39
Библиотечные я либо помню, либо дырку ставлю и смотрю тип, либо хуглю. Внутрипроектовые могу ещё через go to def глянуть. Документацию опять же хуглю.

Dmitry
25.05.2018
09:46:14
Хуглишь -- т.е. переключаешься в браузер и там смотришь? Или интегрировано в редактор?

Aleksey
25.05.2018
09:46:43
Жму в редакторе хоткей, открывается вкладка в браузере.
Мы haddocks собираем сейчас, надо бы открывать локальную версию, но всё никак не прикручу

Dmitry
25.05.2018
09:47:38
А есть уже функционал, чтобы по имени функции можно было как-то import Data.Xxx.Yyy добавить?
(Или такого в природе ещё вообще нету?)

Aleksey
25.05.2018
09:48:10
intero вроде умеет
вызываешь функцию, интеро показывает ошибку и предлагает исправить импортом оттуда-то

Dmitry
25.05.2018
09:48:43
Ну у меня всё :)
Сделай доброе дело, запили пост на gist'е. Типа, Haskell IDE in 2018. Такие статьи попадаются в сети, но они быстро устаревают. Если положить в gist, то это можно было бы хоть как-то поддерживать и актуализировать.

Aleksey
25.05.2018
09:50:02
Ок.

Dmitry
25.05.2018
09:50:26
Ну и потом сюда ссылку в шапку, и к новичкам тож.

Aleksey
25.05.2018
09:51:24
Может на Wiki к github/ruhaskell напишу, чтобы коллаборация была, вот это всё

Dmitry
25.05.2018
09:58:23
Ну только чтобы другие тоже могли добавлять, хотя бы в виде PR'ов.
@maksbotan Neovim лучше vim'а? В чём? (Ну, для тебя.)

Maxim
25.05.2018
10:02:54
я поставил попробовать, когда он только появился, ну так и привык. вообще, асинхронная работа с внешними приложениями это прикольно, редактор не блокируется когда делает комплит или проверяет исходник
ну и терминал иногда бывает полезен

Dmitry
25.05.2018
10:03:12
Я его полгода назад пробовал, что-то сильной разницы не заметил, а вот пара моих наработок перестала работать :( Надо было бы портировать, но я забил.

Google

Maxim
25.05.2018
10:03:13
поддержка true color в консоли рулит

Dmitry
25.05.2018
10:03:31
Хм, асинхронность -- да, надо брать.

Maxim
25.05.2018
10:03:53
там в vim8 тоже завезли асинхронность
и терминал =)
так что теперь непонятно что лучше

Dmitry
25.05.2018
10:04:41
Да, вот я и в раздумьях, надо ли переходить.

Maxim
25.05.2018
10:05:10
Я просто уже привык. Не хочу пытаться свой конфиг переносить

Dmitry
25.05.2018
10:06:09
У меня с vim на neovim все плагины перенеслись совершенно ровно, только мои собственные поделки отвалились.

A64m
25.05.2018
10:10:00

Maxim
25.05.2018
10:17:12
ну класс
мы все равно на ghc-8.0.2 и старом hie

A64m
25.05.2018
10:17:46
ну это еще осенью только зарелизят

Mink
25.05.2018
10:32:34

Anton
25.05.2018
10:35:40
спасибо! в категорном чатике тоже об этом сказали

Gleb
25.05.2018
11:38:57
Привет, чатик. Кто в каком редакторе пишет на хаскеле? Где больше всего плюшек? Есть ли идешки уровня JetBrains - чего-нибудь?

Maxim
25.05.2018
11:40:16
что, отдохнули и по новой за редакторы? :)

Hot
25.05.2018
11:40:53
Потому что не умею.
А если бы писал, то писал бы в vim.
Потому что ни один мой калькулятор IDE от JetBrains не потянет, да и сложные они, неудобные.

Gleb
25.05.2018
11:41:50