dizer писал(а):
Конечно нет, куда продуктивнее пользоваться текущей справкой ББ, или того лучше открывать поочередно файлы в docu директорий подсистем ББ... это вы точно подметили...
Я не знаю. ББ не пользуюсь. Не сложилось (там где были предпосылки, что могло бы сложиться), да и по работе он мне оказался не нужен (мы в языках в общем то никак не ограничены, в силу специфики работы, но вот ББ, да и вообще Обероны пока никакого выигрыша не сулят, скорее наоборот). Но документация тут в общем то не при чем.
Но я знаю например что в haskell'e мне почему-то удобно без автокомплита. Т.е. был leksah, который что-то там автокомплитил и подсказывал, на лету что-то там компилировал, ошибки подчеркивал красным. В общем, очень суетился под клиентом. И это меня так достало что я ушел таки в емакс (в консольный. с отключеной подсветкой синтаксиса) и не жалею об этом. Типы библиотечных функций говорит (когда текстовый курсор на ней) и ладно. Ну, + repl конечно. Удобно, не отвлекает. Базовых функций не много, и я их знаю (чего небыло до тех пор пока пользовался автокомплитами) и могу уже ими оперировать в процессе построения алгоритма. Одной прослойкой меньше, алгоритм строится быстрее и быстрее отображается в работоспособный код.
Если вдруг нужно найти что-то отвечающее неким параметрам (например типам. например я знаю что есть некая функция измеряющаяя длину списка, но, елки палки, забыл совсем как эта функция называется), то есть hoogle (
http://www.haskell.org/hoogle/), emacs имеет с ним интеграцию. Там просто вбиваешь запрос и радуешься. Ну, например если я ищу фукнцию которая бы измерила длину списка, то, очевидно, она должна иметь тип, какой-то такой: [a]->Int , вбиваем, и находим что да, это length, а не size, как я изначально думал:
Код:
http://www.haskell.org/hoogle/?hoogle=[a]-%3EInt
(почему-то этот url движком форума не кушается нормально)
В ерланге автокомплит пригодился бы, просто потому, что там каждый модуль совсем-совсем независимо компилируется, и банальная опечатка в функции будет компилятором проглочена, ведь он не знает в каком окружении будет использоваться данный модуль. Окружение динамично и разбросано по нескольким узлам, каждый узел на своей машине.
Но тут только для исправления опечаток. Впрочем, можно в систему сборки воткнуть стандартную утиль-чекер, которая проверит всё и даст по голове в случае если решит что чего-то тебе там не хватает.
Кроме того, IDE даже для "ООП" языков нагло лжет. После точки оно рисует только мэ-этоды. Но то что можно сделать с этой переменной на самом деле не ограничивается функциями куда ссылка на данную переменную идет первым неявным аргументом. Есть ещё функции которым оно передается например вторым и явным аргументом, и которые с ним что-то там делают. Т.о. IDE по точке выдает далеко не все. В отличае от того же hoogl'a.