[Oberon] erroneous hiding procedures in programmer's text editor v2.1
informujo at aon.at
Tue Dec 24 17:28:55 CET 2013
On 12/24/13 02:47, Chris Burrows wrote:
> I read Felix's message differently. The key phrase was: 'provided that the
> EBNF is adapted accordingly'. Consequently if the syntax definition of the
> language was changed so that semicolons are optional or eliminated
> altogether then it would no longer be a syntax error if they were missing.
OK, but if we change the EBNF then it isn't Oberon anymore. :)
I think, Niklaus Wirth responded to the subject of semicolons one day,
saying that they teach us to be precise.
> It is an interesting observation. I recall when I was wet behind the ears
> (back in the 1970's) as a newcomer to Pascal. The compiler kept on telling
> me 'semicolon required' - my irritated response was "Well, if you are
> expecting one, why don't you put it in for me?" Fortunately, unlike the poor
I had the same experience with Pascal. However, the Oberon syntax is
simpler: all one has to remember is that statements have to be
separated by semicolons.
This is a lot simpler both for the compiler and the programmer than
e.g. in Scala, where semicolons between lines are optional and the
following rules apply (according to scalass.com/en/basic/semicolon.html):
By default, a line ending is as a semicolon, which is a statement ending.
A statement is considered not end when
- The line ends in the middle of parentheses() or brackets
- The line ends in a word that not valid as the end of a statement,
such as infix operators (+, -, *, / ...)
More information about the Oberon