[Oberon] ThisCommand, semi missing

Jörg Straube joerg.straube at iaeth.ch
Wed Apr 16 23:11:09 CEST 2014

Hi Jan

I agree that it is difficult - if you are used to a certain language construct - to no longer use it.

Whether you write
  LOOP (* do something *) END
  WHILE TRUE DO (* do something *). END
the compiler might  generate the same code.

I further agree that several EXITs might be useful under certain conditions. But i found for most cases an alternative sequence, that even was more readable in the long run.

br, Jörg

> Am 16.04.2014 um 16:31 schrieb Jan Verhoeven <jan at verhoeven272.nl>:
> Paul Onyschuk wrote:
>> On Wed, 16 Apr 2014 01:45:32 +0200
>> Jan Verhoeven <jan at verhoeven272.nl> wrote:
>>> LOOP/END gone. Multiple RETURNs gone. Silly WHILE/ELSIF construct.
>> Funny, I was reading "Why Pascal Is Not My Favorite Programming
>> Language" by Brian Kernighan the other day.
> Let's have a look at C. C has a Goto statement. Dijkstra was against it. 
> Knuth not. Torvalds also not. Under the condition: beware of the Goto! 
> Use it with caution. The Goto is still part of C. Nobody decided to take 
> it out, for the sake of safety or whatever.
> LOOP/END is in fact a Goto statement. The "LOOP" keyword defines a label 
> and the associated "END" statement says "Goto the matching LOOP label".
> LOOP/END is simply removed. Yet, endless loops are at the core of all 
> process computers and operating systems. LOOP/END is a great control 
> structure, especially with the matching EXIT statement. LOOP/EXIT/END 
> can replace any other looping construct. But the reverse is not true.
> I say that's a pity. The best looping structure has been sacrificed.
> The same goes for the other keywords that were skipped. Normally a 
> programming language gets richer with age. Oberon gets skinnier. Again, 
> I call that a pity.
> And now I am awaiting the next private mail from another participant of 
> this list telling me "How dare you doubt Professor Wirth's judgement". 
> As I have them regularly.
> -- 
> Groetjes
> Jan Verhoeven
> --
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
> https://lists.inf.ethz.ch/mailman/listinfo/oberon
-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2334 bytes
Desc: not available
Url : https://lists.inf.ethz.ch/pipermail/oberon/attachments/20140416/c53eb2b1/attachment.bin 

More information about the Oberon mailing list