LINUX.ORG.RU

Ричард Столлман хочет видеть некоторые возможности Eclipse реализованными в Emacs

 , ,


1

0

В воскресном письме в список рассылки emacs-devel, Ричард Столлман сообщил о своих впечатлениях от знакомства со средой разработки Eclipse. Некоторые свойства Eclipse Ричард хотел бы увидеть реализованными в Emacs:

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

>>> Подробности

anonymous

Проверено: Shaman007 ()
Ответ на: комментарий от Aceler

> Т.е. вы ваши программы отлаживаете исключительно в отладчике?

> Нет, я получаю сообщения об ошибках прямо в редакторе. Синтаксис подчёркивается красной волнистой линией, варнинги отмечаются желтыми галочками ну и так далее. Инджой! :)

Я искренне надеюсь, что вы тут шутите, поскольку путать поиск синтаксических ошибок с отладкой может только полный дурак. :(

sv75 ★★★★★
()
Ответ на: комментарий от sv75

> Я искренне надеюсь, что вы тут шутите, поскольку путать поиск синтаксических ошибок с отладкой может только полный дурак. :(

Словосочетание "и так далее" видимо, было пропущено. А в нём - установка точек останова, например.

Ещё разок, мои методы работы (учитывая, что большую часть времени я не программирую) я обсуждать не буду.

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

> Ещё разок, мои методы работы (учитывая, что большую часть времени я не программирую) я обсуждать не буду.

Нет нет, ваш комплекс мы не тронем, всё будет ок.

alx_me ★★☆
()
Ответ на: комментарий от Aceler

> А в нём - установка точек останова, например.

Ага, спалился в итоге. Отладка==установка точек останова, ага.

> Ещё разок, мои методы работы (учитывая, что большую часть времени я не программирую)

Я тоже, и что?

sv75 ★★★★★
()
Ответ на: комментарий от Aceler

> Отладка==установка точек останова, ага.

> Все овцы олени, ага.

А что еще? Неужто запуск тестов и программы? Так ведь было заявлено, что "отладки в Kate нет"? Как же так?

sv75 ★★★★★
()
Ответ на: комментарий от Aceler

А я вообще, прикиньте gdb только на core натравливаю, и думаю, нахера мне тут IDE? Может я стар?

alx_me ★★☆
()
Ответ на: комментарий от sv75

А я вот отлаживаю в мозгу чаще. Плюс сбор данных для анализа с помощью printf. Ну и бумажка, конечно же. )

anonymous
()
Ответ на: комментарий от anonymous

>А я вот отлаживаю в мозгу чаще. Плюс сбор данных для анализа с помощью printf. Ну и бумажка, конечно же. )

Это все клево, когда примерно знаешь, где искать. А когда знаешь с точностью +- километр порой проще подцепить удаленно к серверу и "прощупать" выполнение запроса. Ибо вставлять во все возможные места логгирование -- убьешься.

WFrag ★★★★
()
Ответ на: комментарий от anonymous

>А я вот отлаживаю в мозгу чаще. Плюс сбор данных для анализа с помощью printf. Ну и бумажка, конечно же. )

Признайся, ведь ты ниасилил дебагер.

Absurd ★★★
()
Ответ на: комментарий от Absurd

>> А я вот отлаживаю в мозгу чаще. Плюс сбор данных для анализа с помощью printf. Ну и бумажка, конечно же. )

> Признайся, ведь ты ниасилил дебагер.

Дебагер применим отнюдь не всегда. Хотя когда он применим - им нужно пользоваться, а не гнуть пальцы.

tailgunner ★★★★★
()
Ответ на: комментарий от Absurd

> Признайся, ведь ты ниасилил дебагер.

Вудди Вудпеккер, я вас узнал. Вы слыхали как на микромир влияет зритель? На этом же эффекте основана фотонная криптография.

alx_me ★★☆
()
Ответ на: комментарий от WFrag

> Ибо вставлять во все возможные места логгирование -- убьешься.

А вы пишите так, чтобы во всех возможных местах логгирование было. Потом восстанавливать ход событий легко и просто. А "прощупывать выполнение запроса" - это непрофессионально.

mv ★★★★★
()
Ответ на: комментарий от Absurd

> Признайся, ведь ты ниасилил дебагер.

Дебаггер (с пошаговой отладкой) - это для начинающих. Дебаггер для изучения core-файлов, полученных от клиентов - совсем другое дело. Но интеграции того же crash с IDE нет (всё по той же причине: кому оно надо, тот не может)

mv ★★★★★
()
Ответ на: комментарий от mv

>А вы пишите так, чтобы во всех возможных местах логгирование было. Потом восстанавливать ход событий легко и просто. А "прощупывать выполнение запроса" - это непрофессионально.

К сожалению, моего кода процентов 10 от всего кода, остальное -- сторонние библиотеки. Плюс иногда "все возможные места" -- это через каждую строчку.

WFrag ★★★★
()
Ответ на: комментарий от sv75

>Так ведь было заявлено, что "отладки в Kate нет"?

Так её там и нет. Есть pdb/gdb, запущенный во встроенной консоли. Отладка появится, когда будет (может, уже и есть, это несущественно) плагин, который будет разгребать выхлоп отладчика и показывать текущую позицию, фреймы стека, переменные и прочая. Связанно с остальным. Пока же мы поимеем cd 'путь/до/файла', напечатанный в отладчик при смене текущего файла :)

adarovsky ★★★★
()
Ответ на: комментарий от WFrag

> Плюс иногда "все возможные места" -- это через каждую строчку.

Так вроде достаточно определить функцию +-100строк и внимательно её прочитать, не пренебрегая кодом библиотек.

alx_me ★★☆
()
Ответ на: комментарий от sv75

А я вот отлаживаю в мозгу чаще. Плюс сбор данных для анализа с помощью printf. Ну и бумажка, конечно же. )

anonymous
()
Ответ на: комментарий от adarovsky

> Так ведь было заявлено, что "отладки в Kate нет"?

> Так её там и нет. Есть pdb/gdb, запущенный во встроенной консоли.

Отладка==запуск отладчика?

Вас настолько больно дельфями в вузе били? Подумайте на досуге о printk, что ли.

sv75 ★★★★★
()
Ответ на: комментарий от sv75

> Вас настолько больно дельфями в вузе били? Подумайте на досуге о printk, что ли.

Да путь подумают хотя бы о template<typename _CharT2, typename _Traits2> friend basic_ostream<_CharT2, _Traits2>& operator<< basic_ostream<_CharT2, _Traits2>&, _CharT2);

alx_me ★★☆
()
Ответ на: комментарий от Absurd

>Признайся, ведь ты ниасилил дебагер.

Им не везде подлезешь, к сожалению. Обычно используют только чтобы расковырять корку. :D

anonymous
()
Ответ на: комментарий от anonymous

Хых, не успел исправить опечатку, как уже нагадили. :D

anonymous
()
Ответ на: комментарий от Aceler

> Ну понятно - пользователи emacs настолько суровы, что отладчиками не пользуются.

Да причём здесь суровость? Поработать вам надо, и это пройдёт, главное запомните, понацеи не существует. И ассоциация отладка = отладчик не верная ассоциация.

alx_me ★★☆
()
Ответ на: комментарий от mv

>Дебаггер (с пошаговой отладкой) - это для начинающих.

Вспоминаю тут чью-то историю с отлавливанием бага, из-за которого программа работала в Debug и крашилась в Release. Баг был отловлен параллельной пошаговой отладкой -00 и -O3 версии программы - это бы выход за границу массива, который проявлялся на девятом уровне вложенности. Программист получил премию в 50K $ за нахождение корня проблемы.

>всё по той же причине: кому оно надо, тот не может

Скорее всем в падлу заниматься, поскольку тема сложная, а денег не светит.

Absurd ★★★
()
Ответ на: комментарий от mv

> И решат, что defmacro лучше

:-D уж да. Увы мнемокод для примера привести не могу - не моя область.

alx_me ★★☆
()
Ответ на: комментарий от alx_me

> И ассоциация отладка = отладчик не верная ассоциация.

Совершенно справедливо, только вот это вы мне с sv75 всё время орёте, а не я вам.

Aceler ★★★★★
()
Ответ на: комментарий от Absurd

> ...отловлен параллельной пошаговой отладкой -00 и -O3 версии программы - это бы выход за границу массива, который..

интересно что есть параллельная пошаговая отладка (follow-mode?), и ещё выход за границу массива это большинство проблем при -O2 - более плотная компановка данных. 9-ый уровень вложенности это чего многа что-ли (bt?) а 24 не хотели в libpw для отсылки одного байта? что-то я не видел этих денег. ;-) а того кто допустил баг уволили? или он за свой же баг премию получил?

alx_me ★★☆
()
Ответ на: комментарий от Absurd

> Вспоминаю тут чью-то историю с отлавливанием бага, из-за которого программа работала в Debug и крашилась в Release.

А у нас QA горячё любят KVM за его дикий execution order при эмулировании SMP. Там такие баги ловятся, которые в нормальной среде раз в год вылезают.

> Скорее всем в падлу заниматься, поскольку тема сложная, а денег не светит.

Именно это я и имею в виду.

mv ★★★★★
()
Ответ на: комментарий от Aceler

> Совершенно справедливо, только вот это вы мне с sv75 всё время орёте, а не я вам.

Только ваша реакция на слово "отладка" вообще была про степень красивости подчёркивания синтаксических ошибок в исходниках при их компиляции.

mv ★★★★★
()
Ответ на: комментарий от sv75

>Отладка==запуск отладчика?

В том числе и. В всяком случае, интеграция с отладчиком и прочие такие приятные вещи делают из текстового редактора IDE

>Подумайте на досуге о printk, что ли

Мне не с руки как-то. Я ядерными делами не занимаюсь. А печаталки при наличии исполняемого файла и коры сильно помогут, ага :)

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

> А печаталки при наличии исполняемого файла и коры сильно помогут, ага :)

Корка - это слепок на момент гибели. По корке далеко не всегда без лога печаталок можно восстановить ход событий, приведший к корке.

mv ★★★★★
()
Ответ на: комментарий от adarovsky

>>а того кто допустил баг уволили?

>А чего сразу не расстрелять?

Лучше продать в рабство, а когда отработает - рассрелять. Ибо нефиг.

:D

tailgunner ★★★★★
()
Ответ на: комментарий от mv

> Не меня одного, судя по всему ;)

Ну мы можем развести ещё пятнадцать страниц флейма на тему что такое отладка и является ли использование отладчика или поиск ошибок компиляции отладкой и прийти к ЛОР-овскому постановлению, что отладка==велосипед, в лучших традициях...

Aceler ★★★★★
()
Ответ на: комментарий от mv

> Корка - это слепок на момент гибели. По корке далеко не всегда без лога печаталок можно восстановить ход событий, приведший к корке.

Для single-thread prog практически всегда если голова есть. для multi лучше несколько core+лог, подтверждаю.

alx_me ★★☆
()
Ответ на: комментарий от Aceler

> ...что отладка==велосипед, ...

лучший высер за день! плод вашего неокрепшего разума не выдержавшего осознания того что отладка это не только отладчик но и логи и голова того кто логи читает и core и наборы тестов и наборы утилит для управления состоянием объекта и т.п. и к IDE всё это имеет очень косвенное отношение, особенно для встраиваемых устройств.

alx_me ★★☆
()
Ответ на: комментарий от Aceler

> прийти к ЛОР-овскому постановлению, что отладка==велосипед, в лучших традициях...

Отладчик уровня машинного кода (gdb) плохо поможет даже при пошаговой отладке плюсатой программы со множеством (вложенных) темплейтов. Более того, сам отладчик, порой, надо отлаживать, ибо вылет gdb на плюсатых программах - далеко не редкость, к сожалению.

mv ★★★★★
()
Ответ на: комментарий от mv

>По корке далеко не всегда без лога печаталок можно восстановить ход событий, приведший к корке

Если сильно повезёт, останется неповреждённым стек. А это уже неземное счастье :)

adarovsky ★★★★
()
Ответ на: комментарий от mv

>Отладчик уровня машинного кода (gdb) плохо поможет даже при пошаговой отладке плюсатой программы со множеством (вложенных) темплейтов. Более того, сам отладчик, порой, надо отлаживать, ибо вылет gdb на плюсатых программах - далеко не редкость, к сожалению

там valgrind рулит в полный рост. Жалко, только отладчик гонок погикали в новой версии, и никак не восстановят :(

adarovsky ★★★★
()
Ответ на: комментарий от adarovsky

> Если сильно повезёт, останется неповреждённым стек. А это уже неземное счастье :)

Мало чем поможет, если баг вызван определённой последовательностью данных, пришедшими по сети, и хорошо размазанными по времени :)

mv ★★★★★
()
Ответ на: комментарий от adarovsky

> там valgrind рулит в полный рост. Жалко, только отладчик гонок погикали в новой версии, и никак не восстановят :(

К сожалению, когда нужен был valgrind, он очень плохо умел работал с тредами. А так - да, штука must have.

mv ★★★★★
()
Ответ на: комментарий от alx_me

А да, я вас ещё забыл в разряде Отладка==отладчик. Может мне напомнить "отладка==установка точек останова" (С) alx_me ?

Aceler ★★★★★
()
Ответ на: комментарий от mv

> Отладчик уровня машинного кода (gdb) плохо поможет даже при пошаговой отладке плюсатой программы со множеством (вложенных) темплейтов. Более того, сам отладчик, порой, надо отлаживать, ибо вылет gdb на плюсатых программах - далеко не редкость, к сожалению.

Ну вот, мы потихоньку начинаем приходить к вышеозначенному мнению. Следующим пунктом будет выкрик "отладчик не нужен" и "алерты - наше всё", ну а затем мы дойдём и до велосипедов. :)

Что я, первый день на лоре, в конце концов? :)

Aceler ★★★★★
()
Ответ на: комментарий от Aceler

> Может мне напомнить "отладка==установка точек останова" (С) alx_me ?

Чтото мне плохо стало, это у меня маразм или у вас? Если не трудно прочитайте мои реплики заново, можете ткнуть меня носом, не обижусь, но я в упор такого сказать не мог.

alx_me ★★☆
()
Ответ на: комментарий от alx_me

> Да путь подумают хотя бы о template

А-а-а!!! Не надо вот этого, а?!!

С уважением, Лёша, второй день описывающий грамматику в терминах boost::spirit

P.S. А CDT в разборе выхлопа из-под g++, выматерившегося на несоответствие типов в spirit-centric коде, не помогает, а скорее даже мешает, т.к. не умеет по-человечьи парсить g++'ный выхлоп. Впрочем, "по-человечьи" для g++'ного выхлопа - это в корне не верно, там как раз нечеловечий выхлоп... Впрочем, не будем о грустном, мир и так полон скорби...

AlexM ★★★★★
()
Ответ на: комментарий от Absurd

> Вспоминаю тут чью-то историю с отлавливанием бага, из-за которого программа работала в Debug и крашилась в Release. Баг был отловлен параллельной пошаговой отладкой -00 и -O3 версии программы - это бы выход за границу массива, который проявлялся на девятом уровне вложенности. Программист получил премию в 50K $ за нахождение корня проблемы.

Слово называется valgrind? Нет, возможно, Вы удивитесь, но вот такие ошибки он отлавливает на ура.

P.S. Правда, премию в 50K баков мне за такое никогда не платили. Наверное, недостаточно хорошо изображал моральные и физические мучения в процессе ;-)

AlexM ★★★★★
()
Ответ на: комментарий от ott

Нет, ну, разумеется, и на старуху бывает проруха. Но классический "выход за границу массива" отслеживается очень здорово.

На самом деле, конечно, "выход за границу массива" - это какой-то привет из 70х. Нонче ошибки уже куда как неуловимее и больнее ;-)

AlexM ★★★★★
()
Ответ на: комментарий от ott

> но выход за границу случается и сейчас, к сожалению

Особенно забавно смотреть на сегфолт на команде prefetchnta, когда она по спеку никаких сегфолтов не генерит. Ан нет, кое-где генерит... ;)

mv ★★★★★
()
Ответ на: комментарий от mv

>Мало чем поможет, если баг вызван определённой последовательностью данных, пришедшими по сети, и хорошо размазанными по времени :)

не раз чинил такие случаи... стек есть, видно кто и где сломался. Если нормально ориентируешься в проекте, то и причина довольно быстро находится... Хотя, конечно, раз на раз не приходится

adarovsky ★★★★
()
Ответ на: комментарий от AlexM

> С уважением, Лёша, второй день описывающий грамматику в терминах boost::spirit

А вы stl используйте, и ждите C++ox без тех извращений что сейчас есть в boost. И будет счастье, но я имел в виду: std::cout << anything;

alx_me ★★☆
()
Ответ на: комментарий от AlexM

> С уважением, Лёша, второй день описывающий грамматику в терминах
> boost::spirit

Ну если речь зашла о связке CDT + boost - это очень хороший показатель для CDT. Та же MSVS очень сильно начинает сходить с ума, когда к ней попадает STL.


To mv (*) (25.03.2008 21:13:35):

Ладно я отписал исходя из того что вы писали более чем в одном трэде. Но предлагаю тему закончить.


To sv75 (*) (25.03.2008 21:54:18):

Может быть вы и правы. Спасибо вам за заботу.

eXOR ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.