This is without a doubt the most frustrating aspect of using Julia, so it's definitely an issue most people would like to see addressed. As I understand it there are some technical challenges that make this more difficult to do in a satisfying way than one would hope. The JIT backend is likely going to be changed as soon as LLVM 3.5 gets released, which should hopefully allow more useful debugging information to get saved into Julia code. Most of Julia's LLVM gurus have been working from the development version of LLVM to improve things in this direction.
The frustration can also be made worse by inconsistent backtraces, a different but related issue. If you built Julia head from the Homebrew formula more than three days ago, it may have been using a version of LLVM that is not 100% supported - see https://github.com/staticfloat/homebrew-julia/commit/e2cd04cddfa75bdbbd2cf03469158ca6f6bc31a5 Stepping through the relevant code sections by copy-pasting into the REPL line by line is an annoying but sometimes-useful workaround. On Sunday, May 4, 2014 11:41:57 AM UTC-7, Dominique Orban wrote: > > I'm finding error messages and warnings emitted by Julia quite opaque, > making development difficult. For instance, I tried translating a function > from Matlab code by copy-pasting and changing a few things here and there, > but Julia tells me things such as "ERROR: arrays could not be broadcast to > a common size" or "ERROR: syntax: unexpected ,", usually without any line > number as a clue. When it does give a line number, it corresponds to the > function declaration and that doesn't help. Are there any plans to improve > the error reporting? >
