comp.lang.ada
 help / color / mirror / Atom feed
From: Matthias Kretschmer <McCratch@gmx.net>
Subject: Re: an infinate loop
Date: Tue, 17 Jul 2001 19:02:21 +0200
Date: 2001-07-17T19:02:21+02:00	[thread overview]
Message-ID: <3B546F9D.4030809@gmx.net> (raw)
In-Reply-To: 9iv0ce$3d3$1@nh.pace.co.uk

Marin David Condic wrote:

> IIRC, the argument was that other languages had attempted to eliminate the
> goto in their design, but that typically the first enhancement made was to
> throw the goto back in. The argument followed that Ada could try to spit
> into the wind and eliminate the goto for all sorts of computer-sciency
> reasons, but inevitably enough people would want it for enough good reasons
> that it should just get included in the language from the start. As with
> other language features, Ada at least attempted to make the goto more safe
> by restricting some of the things you could jump into and out of. On the
> whole, I think it was pretty successful - you almost never hear of anybody
> saying "I'd love to use Ada, but because of all the restrictions on the goto
> statement, I just can't make it work for my app..." :-)
> 


It is possible to program without using an goto at all (see W.A.Wulf: 
"Programming without goto" or D.E.Knuth and R.W.Floyd (1971): "Notes on 
avoiding goto statement") - and this should be the right way. Jumps/goto 
make the whole thing very unreadable I think and it is difficult to 
prove the correctness. Proving the correctness of 
algorithms/subprograms/programs is maybe unusual (or done by only a 
few), but if you are sure that your way of doing it, is the right way, 
it should be easy to prove. Unproven code just waits for its counterexample.

Once someone involved in the Ada design in the beginnig told me, that 
the goto statement was mainly implemented to make the language more 
attractive to people who do not want to live without.




  reply	other threads:[~2001-07-17 17:02 UTC|newest]

Thread overview: 27+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2001-07-12 21:43 an infinate loop Beau
2001-07-13  3:21 ` DuckE
2001-07-13 13:57 ` Ted Dennison
2001-07-13 17:01   ` Jeffrey Carter
2001-07-13 18:11     ` Ted Dennison
2001-07-13 22:26       ` Jeffrey Carter
2001-07-16 15:14         ` Marin David Condic
2001-07-17 17:02           ` Matthias Kretschmer [this message]
2001-07-17 17:56             ` Marin David Condic
2001-07-17 19:25               ` Ted Dennison
2001-07-19 11:38                 ` Matthias Kretschmer
2001-07-19 14:28                   ` Ted Dennison
2001-07-17 17:13           ` Warren W. Gay VE3WWG
2001-07-14 23:41       ` Darren New
2001-07-16 13:24         ` Ted Dennison
2001-07-16 15:19           ` Marin David Condic
2001-07-13 20:40     ` chris.danx
2001-07-13 22:29       ` Jeffrey Carter
2001-07-14 14:00         ` Robert Dewar
2001-07-14 16:17           ` Negative Logic (was: Re: an infinate loop) Jeffrey Carter
2001-07-17  4:06             ` Robert Dewar
2001-07-17  4:23             ` Robert Dewar
2001-07-16  9:26           ` an infinate loop Philip Anderson
2001-07-19  9:32             ` an infinite [was: infinate] loop AG
2001-07-15 21:18   ` an infinate loop Matthias Kretschmer
2001-07-16 21:59   ` Stephen Leake
2001-07-13 16:48 ` C. Bauman
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox