Confusing/misleading error message for a beginner

Right, I guess you learn to read the error messages over time and understand them better, but I want to point out JuliaSyntax.jl the new parser which does actually have better error messages!

I haven’t actually tried it myself, since I’m adjusted and ok enough by now with Julia’s errors, but let me know it it helps. I also see in its readme a link to:

The paper P2429 - Concepts Error Messages for Humans is C++ centric, but has a nice review of quality error reporting in various compilers including Elm, ReasonML, Flow, D and Rust.

Julia (with or) without that package may not have the best error messages, but by far not the worst of all languages. C++ has terrible error messages at least if you use templates (which is it generic feature, and Julia is generic by default, so competing with such).

There are also other tools:

that I haven’t tried (might conflict with the other package?) and JET.jl, I’m just barely tried, and Aqua.jl and a linter also available. More to be aware of in this context?

Well and I forget:

Not sure if supports VS Code too, if it does and is useful, maybe it and some of the best tools should be bundled with?

And how did that work for you? See my post on it and question in the off-topic category. I was asking about AI tools for writing code, but I can see such tools, even that one, helping for decoding error messages. Feel free to answer here about it and/or there. Maybe we should add a new topic about such tools to use with error messages. Or I’m happy to add a question to my post there. I kind of regret putting it under off-topic, I think AI tools are very much on-topic for Julia, or will be, and at least already relevant for other languages.

Potentially tab-completion is also an area for AI. There are already topics here about that and new possible syntax (in part to help with TAB-completion), in the internal category, and maybe elsewhere. I look forward to what’s possible with or without AI, or learning what’s maybe already possible. There is e.g. a package ObjectOriented.jl for single-dispatch OO, as in Python, but I don’t want to use a package/alternative syntax to get TAB-completion (I believe it doesn’t offer that, and I doubt someone would make a tool just for a specific package/style). Or at least I would want it for both styles (at least for the default idiomatic Julia code).

I only sort of follow the syntax posts (this is 3rd and latest proposal, tab-completion may have been discussed more in the older two posts, and there actually even one more, linked from some of them…):

1 Like