我有一些Ruby和Java背景,我习惯于在错误日志中有确切的行数.
因此,如果编译代码中存在错误,我将在控制台输出中看到导致异常的行数.
就像在这个Ruby示例中一样:
my_ruby_code.rb:13:in `/': divided by 0 (ZeroDivisionError)
from my_ruby_code.rb:13
Run Code Online (Sandbox Code Playgroud)
它简单而快速 - 我只需转到第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
Run Code Online (Sandbox Code Playgroud)
没有行号可供查看.
如果我有两行像
X = Param1,
Y = Param2,
Run Code Online (Sandbox Code Playgroud)
在'my_fun'中,怎么能理解问题出在哪一行?
另外,我试图从Vim切换到Emacs + Elang模式,但到目前为止我唯一的奖励就是能够在Emacs(Ck`)中循环编译错误.
因此,编写代码和寻找简单的逻辑错误(如"右手边不匹配")的过程似乎有点麻烦.
我试图在代码中添加许多"io:format"行,但这是需要时间的额外工作.
我也尝试过使用distel,但只需要10步就可以打开调试器一次.
问题: