On Sun, 19 May 2024, Douglas McIlroy wrote:
Another non-descriptive style of error message that I
admired was that
of Berkeley Pascal's syntax diagnostics. When the LR parser could not
proceed, it reported where, and automatically provided a sample token
that would allow the parsing to progress. I found this uniform
convention to be at least as informative as distinct hand-crafted
messages, which almost by definition can't foresee every contingency.
Alas, this elegant scheme seems not to have inspired imitators.
I did something like that for our compiler-writing assignment. An
ALGOL-like language (I think I used ALGOLW) it would detect when a
semicolon was missing, and insert it (with a warning). As a test case, it
successfully compiled a program with no semicolons at all...
-- Dave