metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2011-11-19 11:41 am

ghci+hoogle

Чтобы не забыть, как впихнуть hoogle в ghci:
в файл: C:\Documents and Settings\user\Application Data\ghc\ghci.conf
добавить строку
:def hoogle \x -> return $ ":!hoogle \"" ++ x ++ "\""

в результате в ghci будет доступна команда
:hoogle чего-нибудь

А вот чего еще не хватает: редактор для хаскеля, в котором можно было бы по быстрому перейти на определение любой функции, а то задалбывает искать по всем пакетам да копаться в hoogle.

(Anonymous) 2011-11-19 09:26 am (UTC)(link)
так vim + теги, для хаскеля есть программа, которая их генерирует
ну или emacs, но вим лучше

[identity profile] metaclass.livejournal.com 2011-11-19 09:35 am (UTC)(link)
Ага, точно.
Я с этим хаскелем все забываю, ради чего я это все завел - чтобы на десктоп линукс впереть и без извращений пользоваться вимом и прочим:)

[identity profile] darkdrip.livejournal.com 2011-11-19 11:20 am (UTC)(link)
чем вим лучше емакса? в емаксе кое-как получается работать. в виме - нет. "ни в коем случае не пользуйтесь инсерт модом" агада. я не конфиги правлю, а код пишу

[identity profile] metaclass.livejournal.com 2011-11-19 11:25 am (UTC)(link)
Я в виме код писал, если запомнить вуду команды, то вполне приемлемо.

[identity profile] darkdrip.livejournal.com 2011-11-19 11:55 am (UTC)(link)
я как правило открываю файлы для того чтобы в них что-нибудь дописать

открываю исходник в виме. нужно дописать строчку. переключаюсь в insert mode. а это жеж нельзя делать! insert mode некошерен! и так каждый раз

ну я понимаю, что когда конфиги правишь, зачастую нужен overwriting. но для написания кода это не подходит

[identity profile] metaclass.livejournal.com 2011-11-19 11:58 am (UTC)(link)
Где написано, что insert mode некошерен?:)

[identity profile] darkdrip.livejournal.com 2011-11-19 12:02 pm (UTC)(link)
во всех мануалах. например тут: cloudhead.io/2010/04/24/staying-the-hell-out-of-insert-mode/

[identity profile] metaclass.livejournal.com 2011-11-19 12:12 pm (UTC)(link)
Там написано, что не нужно использовать insert mode больше, чем нужно.

[identity profile] darkdrip.livejournal.com 2011-11-19 12:26 pm (UTC)(link)
таки да. но если после открытия файла автоматически не включается insert mode, значит insert mode мне вообще не нужен. вим считает, что я правильщик конфигов в НИИ ГИТ

[identity profile] metaclass.livejournal.com 2011-11-19 12:32 pm (UTC)(link)
Ну то, что под линуксом не принято ничего делать, это отдельная история :)

[identity profile] tzirechnoy.livejournal.com 2011-11-19 01:29 pm (UTC)(link)
Он не то, чтобы совсем некошэрен... Он некошэрен для всего, кроме вставки символов.

То есть не надо ходить по исходнику в insert mode. И удалять в нём -- в общем-то тожэ.

[identity profile] darkdrip.livejournal.com 2011-11-19 01:52 pm (UTC)(link)
а программирование - это как правило вставка новых символов. рефакторингом никто не занимается. если после открытия исходника я не получаю insert mode, то до свидания

[identity profile] metaclass.livejournal.com 2011-11-19 02:50 pm (UTC)(link)
Эээ, рефакторингом я занимаюсь постоянно :)

[identity profile] tzirechnoy.livejournal.com 2011-11-19 03:02 pm (UTC)(link)
Если бы программирование было вводом текста, то программистами были бы машынистки.

Ну и да, тогда средние 70 строк в сутки были бы смехотворны, а запредельные 1200 -- нормой очень отсталого кодера.

На самом деле наша работа в основном состоит из чтения и понимания разнородных исходников.

[identity profile] potan.livejournal.com 2011-11-19 03:59 pm (UTC)(link)
Я несколько раз пытался на Emacs перейти, но ни разу не осилил.
Дольше всего продержался, когда vipper там запускать научился...
Хотя, говорят, в elispе таки перешли на static scoping - надо будет еще разок попробовать.

[identity profile] cp-poster.livejournal.com 2011-11-19 08:43 pm (UTC)(link)
Эклипс ужасен. У меня негативный опыт разработки в нём под андроид. Много мелких багов, которые мешают.

[identity profile] deni-ok.livejournal.com 2011-11-19 09:39 am (UTC)(link)
Вот спасибо!
Я знал, что это можно, но наконец-то руки дошли сделать.

[identity profile] theiced.livejournal.com 2011-11-19 11:21 am (UTC)(link)
emacs вроде умеет джампать...

[identity profile] theiced.livejournal.com 2011-11-19 11:24 am (UTC)(link)
ага - не умеет на библиотечные функи джампать, а так ок ;]

[identity profile] tzirechnoy.livejournal.com 2011-11-19 03:03 pm (UTC)(link)
Ну да, tags для определений + в вим есть вызов справки на слово по K. По умолчанию это man, но несложно переставить на какой-нибудь hoogle.