From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: fac41,9a0ff0bffdf63657 X-Google-Attributes: gidfac41,public X-Google-Thread: 103376,4b06f8f15f01a568 X-Google-Attributes: gid103376,public X-Google-Thread: f43e6,9a0ff0bffdf63657 X-Google-Attributes: gidf43e6,public From: dennison@telepath.com Subject: Re: Is there a language that Dijkstra liked? (was: Re: Software landmines (loops)) Date: 1998/10/26 Message-ID: <712i5t$9i$1@nnrp1.dejanews.com>#1/1 X-Deja-AN: 405270156 References: X-Http-Proxy: 1.0 x11.dejanews.com:80 (Squid/1.1.22) for client 204.48.27.130 Organization: Deja News - The Leader in Internet Discussion X-Article-Creation-Date: Mon Oct 26 19:22:38 1998 GMT Newsgroups: comp.lang.eiffel,comp.software-eng,comp.lang.ada X-Http-User-Agent: Mozilla/4.05 [en] (WinNT; I) Date: 1998-10-26T00:00:00+00:00 List-Id: In article , stt@houdini.camb.inmet.com (Tucker Taft) wrote: > Ehud Lamm (mslamm@mscc.huji.ac.il) wrote: > > : On Thu, 22 Oct 1998 biocyn@erols.com wrote: > > : This is a very common view. However I find it a little too extreme. Buggy > : code can be written in any language. Many errors result from not sticking > : to what was designed, using flawed algrotihms etc. You can do this in any > : language. > > I think the real point is that a good software engineer will find Ada more > productive, because the compiler and the run-time constraint checking > catch a larger percentage of the inevitable minor mistakes we all make. > This means that if you make it through the "gauntlet" of the stringent > compile-time and run-time checks, your program is likely to have many > fewer lurking errors than with a language which has weaker compile-time > and run-time checking. The part that I find tres' cool is that the run-time checks tend to make a buggy program bomb very close to the true source of the problem. Without it, bugs surface randomly. On a large networked system It can take weeks just to find the source of such a "random" bug. I've seen one instance where a C array bounds indexing bug caused garbage to get passed through 2 intermediate machines, processed, and sent to a third which blew up trying to dereference the pointer it got by using the resultant garbage as another array index into an array of poiners. Two engineers were flown into the customer site and put up in hotels for 2 weeks while they tried to figure out what was going on. Of course if it were written in Ada, a range check would have caused the program to bomb at the line where the invalid index was first used. A decent compiler will then print a stack dump with the error, routine, and line number. We could probably have fixed it over the phone in less than a day. It only takes one bug like that to completely erase any cost savings you thought you were getting by using that cheap C compiler. -- T.E.D. -----------== Posted via Deja News, The Discussion Network ==---------- http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own