У меня есть опыт работы с Ruby и Java, и я привык к точному количеству строк в журналах ошибок.
Итак, если в скомпилированном коде есть ошибка, я увижу номер строки, вызвавшей исключение, в выводе консоли.
Как в этом примере Ruby:
my_ruby_code.rb:13:in `/': divided by 0 (ZeroDivisionError)
from my_ruby_code.rb:13
Это просто и быстро - я просто перейдите к строке номер 13 и исправьте ошибку.
Напротив, Erlang просто говорит что-то вроде:
** exception error: no match of right hand side value [xxxx]
in function my_module:my_fun/1
in call from my_module:other_fun/2
Нет номеров строк, на которые можно было бы смотреть.
А если у меня в "my_fun" есть две строки вроде
X = Param1,
Y = Param2,
, как понять, в какой строке кроется проблема?
Кроме того, я попытался переключиться в режим Emacs + Elang из Vim, но пока что единственный бонус, который у меня есть, это возможность циклически перебирать ошибки компиляции внутри Emacs (Ck `).
Итак, процесс написания кода и поиск простых логических ошибок, таких как «нет совпадения правой стороны», кажется немного обременительным.
Я попытался добавить в код много строк «io: format», но это не так. дополнительная работа, требующая времени.
Я также пробовал использовать distel , но требуется 10 шагов, чтобы просто открыть отладчик один раз.
Вопросы: