They aren't really meant for you, as a user, but rather for whatever is calling LaTeX as a library. It's one of the reasons that an IDE is recommended rather than a text editor.
You can see a good breakdown here. [0]
If we want to compare it to other compilers, LaTeX outputs similar error messages to C++, that is, it gives you the error tree, not an error message.
It's output isn't meant to be the final stop for the user. It's one stop short.
Some errors may only be detected in the later stages of processing, making it difficult to relate them to the original LaTeX.