News for hackers. Stuff that matters.
Re:Prefer the British Style of Quotation Mark Punctuation ov... by int_19h on Wednesday September 15, 2021 @06:30AM (#28537423)
Pascal is fully self-consistent here: in it, semicolon is a statement separator, not a statement terminator. Since the statement before "end" is the last one in the block, there's no statement to separate it from with a trailing semicolon, and so it's a syntax error.
Re:Prefer the British Style of Quotation Mark Punctuation ov... by barrkel on Wednesday September 15, 2021 @08:45AM (#28538390)
Pascal permits a null production for the statement grammar.

    simple-statement = 
              empty-statement 
            | assignment-statement
            | procedure-statement
            | goto-statement .

    empty-statement = .
from http://www.pascal-central.com/iso7185.html#6.8%20Statements (ISO 7185 Pascal)

In practice the separator-vs-terminator distinction mostly shows up in if-statements:

  if foo then
     bar
  else
     baz;
I believe that anywhere else in a statement context, you can put in as many extra ';' as you like and it won't make a difference. And of course you can drop the final ';' before 'end' or 'until'.
Re:Prefer the British Style of Quotation Mark Punctuation ov... by stkdump on Wednesday September 15, 2021 @07:21AM (#28537697)
It's not a syntax error.
Re:Prefer the British Style of Quotation Mark Punctuation ov... by denton-scratch on Wednesday September 15, 2021 @08:48AM (#28538416)
Correct - the redundant semi-colon denotes an empty statement.