[Oberon] ThisCommand, semi missing
joerg.straube at iaeth.ch
Wed Apr 16 23:11:09 CEST 2014
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.
> 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.
> Jan Verhoeven
> Oberon at lists.inf.ethz.ch mailing list for ETH Oberon and related systems
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2334 bytes
Desc: not available
Url : https://lists.inf.ethz.ch/pipermail/oberon/attachments/20140416/c53eb2b1/attachment.bin
More information about the Oberon