As well as both

if a then
  DoSomething
else
  DoOtherThing;

and

if a then
  DoSomething;
else
  DoOtherThing;

At least to me they are :-)


This "feature" is so unclean and so poorly informed about WHY the ; is a part of the language. First of all, Pascal is not a line based language. The ; is used as a terminator for a certain part of code, not as a terminator for a blockstatement.
Mixing these three concepts introduces ambiguity.
The ; implies a break, i.e. do not continue the evaluation of that part of the code. Or, like in natural language, whatever comes after it has no direct bearing for its meaning. It is much like natural language. The ; should not be there if the code is ment to be read as a single sentence. This is pure logical.
I hope this "patch" will never make it into production. It is ill informed.


_______________________________________________
fpc-devel maillist  -  fpc-devel@lists.freepascal.org
http://lists.freepascal.org/mailman/listinfo/fpc-devel

Reply via email to