This is already happening in various other places. See for example how the `probe` command is parsed. I guess the point of view is that the shader runner is a developer-facing tool, so we prefer a simpler code even if it results in somewhat less polished error messages.
In a sense, although it was less an intentional decision towards simplicity as a decision not to put in the effort to make it well-written.