metaclass: (Default)
metaclass ([personal profile] metaclass) wrote2010-08-21 11:05 am

Осеннее обострение?

Что-то как лето с жарой закончилось, начались ежедневные ИТ-срачи, причем иногда на довольно дикие академически-хардкорные темы, типа "почему автор F# не встроил туда зависимые типы, но так, чтобы ими можно было пользоваться не сойдя с ума". Или "как бы это в статическую типизацию вкрутить функции с переменным числом параметров".

Простейшие мелочи типа дизайна mv или школьного линукса вызывают какие-то феерические треды на тему "Кто кого заборет - emacs, MFC или дотнет".

Да, кстати, на тему линуксовых исходников. В чем их открыть так, чтобы: 1) по идентификатору можно было сразу перейти и открыть файл, где он объявлен; 2) можно было скомпилировать и запустить; 3) если это все ляснется с segfault или еще чем - посмотреть где оно ляснулось и пройтись отладчиком. Ну или чтобы при падении само открывало нужное место в исходниках.

Третье я как-то уже сам догадался - билдишь с отладочной информацией и ходишь в gdb. Правда, хер оно интегрировано с редактором кода - из gdb первый пункт(навигация по идентификаторам) вроде не выполнишь.

Это я к тому, зачем нужны IDE.

[identity profile] alexott.livejournal.com 2010-08-23 07:27 am (UTC)(link)
для С/С++ gtags (пакет gnu global) гораздо лучше. плюс оно нормально поддерживается в CEDET

[identity profile] kurilka.livejournal.com 2010-08-23 07:44 am (UTC)(link)
а в ымаксе нет родной поддержки gtags? Надо плагины (аля CEDET) юзать?

[identity profile] alexott.livejournal.com 2010-08-23 07:46 am (UTC)(link)
есть, тот, который идет вместе с gnu global - так и называется gtags.el. Но CEDET умеет много информации вытаскивать из gnu global, а не только переходить к объявлению

[identity profile] kurilka.livejournal.com 2010-08-23 08:13 am (UTC)(link)
а что входит в это много? Doxygen-овские комменты?

[identity profile] alexott.livejournal.com 2010-08-23 08:22 am (UTC)(link)
найти все вызовы нужной функции, переход к локальным объявлениям, использование информации о классе для построения дополнений, и т.п.