
Alexander
31.08.2017
15:03:14
ether,m-classes через теги или аналог
поэтому там проблемы фундепов нет
а так у трансформеров проблема это скорость, если стек глубокий
что возможно решает Monad morphism

Google

Index
31.08.2017
15:07:51
Как раз скорость у трансформеров это их главное достоинство, потому что компилятор хорошо умеет их оптимизировать. А делать их глубокими просто не нужно, почти все эффекты коммутативны и их можешь объединять
Имеет смысл делать, например, два слоя StateT, если один под ExceptT, а другой над.
А если они оба под, или оба над, то взять и объединить

Alexander
31.08.2017
15:11:51
в сравнении с другими решениями - дп
но это те решения ещё более медленные

Index
31.08.2017
15:12:30
Что ты себе представляешь быстрее?
Это final encoding

Alexander
31.08.2017
15:30:02
с морфом быстрее, если выкидывать часть стека которая не нужна

Index
31.08.2017
15:32:36
А, ну это да, я не рассматривал альтернативный вариант (таскать ненужную часть стека везде)

Alexander
31.08.2017
15:41:41
и.е. скорость этотоверхед, который платится за интерфейс
и он получается зависим от глубины стека +- инлайн

Vitaly
31.08.2017
16:29:54
Ребят, кто какую IDE пользует под haskell?

kana
31.08.2017
16:39:15
Вскод + хаскеро(интеро), юзабельно, но не скажу, что доволен прям всем

Google

kir
31.08.2017
16:43:57
Я IDE не использую вообще. Раньше стоял ghc-mod на Atom, но я его отпилил, потому что полусекундная задержка и н перестал работать после какого-то обновления системного GHC

Vitaly
31.08.2017
16:45:51
ну а редактор кода какой лучше? Я пробовал notepad++, но как-то не в восторге...

kana
31.08.2017
16:46:06
лоол

Konstantin
31.08.2017
16:46:14
http://haskell.github.io/haskell-mode/

Denis
31.08.2017
16:48:24
vscode + haskell-ide-engine, hfm

Vitaly
31.08.2017
16:48:43
а про atom есть отзывы?

Denis
31.08.2017
16:48:55
медленный

Valeriy
31.08.2017
16:49:10
vscode + haskelly, но юзал только на маленьких проектах

Kirill
31.08.2017
16:50:43
idea + haskforce, худо-бедно работает (с комплитом частенько беда)

Vyacheslav
31.08.2017
16:51:27
Лучше vs code

Index
31.08.2017
16:51:53
Вбиваешь vimtutor в терминале и изучаешь единственно верный способ манипуляции текстом
Подсветка синтаксиса для Haskell там есть

Oleg
31.08.2017
16:53:46
а про atom есть отзывы?
Atom. Всё хорошо. Запускается дольше, чем vs code, остальное тормозит одинаково и уже не из-за редактора

Ilya
31.08.2017
16:57:04
кстати, подсветка хромает
по-крайней мере на vim 7.4

Index
31.08.2017
16:57:56
> чтобы снизить кол-во обращений к ghci
Все эти Intero и прочие приблуды не работают с проектами хотя бы несколько сотен файлов
Да и GHCi там себя не восторг как показывает
stack build --file-watch и вперед

Denis
31.08.2017
16:59:54
stack build —file-watch —fast

Google

Denis
31.08.2017
17:00:50
даже
stack build —test —file-watch —fast —pedantic

Index
31.08.2017
17:01:00
Ну да.

Denis
31.08.2017
17:01:06
--pedantic turns on -Wall -Werror for GHC (all warnings on, and warnings treated as errors)

Index
31.08.2017
17:01:21
Я это в .cabal-файле включаю

kir
31.08.2017
17:07:59
А есть какой-нибудь -Wall-except-orphan-instances? И вообще, что за история с орфанами, что их так компилятор не любит?

Denis
31.08.2017
17:09:15
ну как бы объявление в одном файле, а докручивания всякого в другом как-то не логично

Alexander
31.08.2017
17:09:36
OPTIONS_GHC -Wno-warn-orphans
в заголовок
из него любят т.к. они легко могут привести к коду, который неадекватно ведет себя в runtime
если разные инстансы применяются одновременно

Index
31.08.2017
17:11:19
https://www.youtube.com/watch?v=hIZxTQP1ifo
^ Почему нужно любить instance coherence
А орфаны — это самый простой способ ее просрать

Yuriy
31.08.2017
17:13:27
@Jubadze, два года пишу на Хаскелле в Атоме, всем доволен

Denis
31.08.2017
17:14:18
ghc-mod перестал работать для ghc8+

Yuriy
31.08.2017
17:17:01
в вскоде нельзя два проекта открыть, вим и емакс для тех, кто любит редактировать редактор вместо написания кода, не знаю, как они могут кому-нибудь нравиться

Denis
31.08.2017
17:17:34
нет, то что установил через stack

Index
31.08.2017
17:18:27
> вим и емакс для тех, кто любит редактировать редактор вместо написания кода
Вим для тех, кто не стрелочками по коду двигается. У меня всё
Редактировать редактор мне не по нраву, это необходимое зло.

Google

Denis
31.08.2017
17:18:58
ага https://github.com/Microsoft/vscode/issues/396
@cblp_su
https://github.com/Microsoft/vscode/issues/396#issuecomment-314806660

Yuriy
31.08.2017
17:22:15

Abbath
31.08.2017
17:22:32
@xgrommx как ide к vscode подключить нормально?

Denis
31.08.2017
17:22:45

Abbath
31.08.2017
17:23:39
Haskell-ide-engine

Denis
31.08.2017
17:24:33
собираешь, потом в вскоде ставишь плагин и все

Yuriy
31.08.2017
17:24:48

Denis
31.08.2017
17:25:24
такой плагин
Language Server Protocol for Haskell via HIE

Abbath
31.08.2017
17:26:01
Он там будет?
Откуда ставить?

Denis
31.08.2017
17:28:25

? animufag ?
31.08.2017
17:34:03

Leonid
31.08.2017
17:34:14
emacs4life

Vasiliy
31.08.2017
17:41:05
а yi кто-нибудь тыкал?

Aragaer
31.08.2017
17:41:50
у меня емакс с ивил модом. Я его не редактирую. Но зато в нем можно двигаться по коду без стрелочек и это великолепно

Yuriy
31.08.2017
17:42:41
не стрелочками — это hjkl?

Google

Aragaer
31.08.2017
17:42:45
ага

Index
31.08.2017
17:42:52
Нет конечно
motions

Aragaer
31.08.2017
17:43:08
за десять с чем-то лет использования вима это для меня совершенно естественный способ перемещения

Vasiliy
31.08.2017
17:43:10
не стрелочками - это словами, параграфами, блоками кода

Index
31.08.2017
17:43:19
Да

Aragaer
31.08.2017
17:43:23
вот к ним пока не привык

Denis
31.08.2017
17:43:25
у меня еще на идее плагин intellij-haskell

Vasiliy
31.08.2017
17:43:44
а что привыкать? надо пользоваться

Aragaer
31.08.2017
17:44:15
ну в смысле мне проще hjkl, чем вспоминать про параграфы. А, по словам двигаюсь, да

Index
31.08.2017
17:44:23
А про Emacs с evil -- в широком смысле это тоже вим, просто другая реализация. Главное философия modal editing и motions

Yuriy
31.08.2017
17:44:32

Index
31.08.2017
17:44:49
Да

Aragaer
31.08.2017
17:45:02
в пределах строки - по словам или по f или t на символ

Vasiliy
31.08.2017
17:45:46
а это непосредственно редактирование
и никакие автокомплиты и встроенные терминалы не заменят работу непосредственно с текстом

Aragaer
31.08.2017
17:46:42
фокусы типа ci( жгут

Index
31.08.2017
17:46:50
Понятно, что редактирование текста -- это не боттлнек в программировании, но friction между тем, что в голове и на экране. Его надо сокращать. По той же причине программист должен знать слепой десятипальцевый

Vasiliy
31.08.2017
17:47:22
так что эклипс, увешанный плугинами, таки проигрывает чуть настроенному виму