Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 (Tek) 9/28/84 based on 9/17/84; site orca.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!houxm!vax135!cornell!uw-beaver!tektronix!orca!jans From: jans@orca.UUCP (Jan Steinman) Newsgroups: net.arch,net.lang.ada Subject: Re: What I miss... (really C, Ada, religion) Message-ID: <1777@orca.UUCP> Date: Sun, 29-Sep-85 14:21:10 EDT Article-I.D.: orca.1777 Posted: Sun Sep 29 14:21:10 1985 Date-Received: Wed, 2-Oct-85 09:17:29 EDT References: <796@kuling.UUCP> <2580002@csd2.UUCP> <191@graffiti.UUCP> <568@unisoft.UUCP> Reply-To: jans@orca.UUCP (Jan Steinman) Organization: Tektronix, Wilsonville OR Lines: 50 Xref: watmath net.arch:1836 net.lang.ada:368 In article <568@unisoft.UUCP> phil@unisoft.UUCP (Phil Ronzone) writes: >In article <191@graffiti.UUCP> peter@graffiti.UUCP (Peter da Silva) writes: >>> ...was it not the mariner probe that was lost due to a FORTRAN subscript >>> error?... for my money I would prefer to see the [range checking] in for >>> systems like nuclear plants, MX missiles etc.. >> >> What should the code do when a range-check occurs? Print out an error >> message on ticker-tape & hang? Do nothing? > > ...as a decade-long C programmer, I find about every 3 years some >``discussion'' with a proponent of a more-or-less highly typed language >(Ada most recent) over the ``virtues'' of Ada and its error checking over >(denigration inserted here) C. > >Shucks - but I still CAN'T see how much the poor pilot in an F16 with an >Ada programmed fire-control computer is going to be as a Mig-27 bears down >on him, and right when he hears the lock-on buzz to fire his own missile -- > > Ada runtime error 498: subscript i value 23 out of range for array x (20) > >I mean, > > Bus error - core dumped > >reads quicker and thus gives the pilot a faster ``oh shit'' response time >to take evasive action .... :-) :-) ****** FLAME ALERT FLAME ALERT FLAME ALERT FLAME ALERT FLAME ALERT ***** As a decade-long generalist who enjoys trying and contrasting new things, I find people who are willing to go public with their lack of knowledge about things they are unwillng to try truly amazing! Sorry, Phil, but you really miss the point. With range checks, the programmer can **anticipate** such errors. Ada (in particular) allows multi-level trapping of such exceptions, so nuclear war does not rest on a single low-level module's ability to do something sane with exceptions. I, for one, would much rather prefer to write an exception handler that will do something useful and sane than to simply let the OS dump core. I've stirred these waters before, and received hate mail for it. I respect the opinion of C hackers who have studied Ada enough to be able to identify it's real problems, but I've really lost patience with those whom are so imbued with C that they cannot understand how things could be any different! One with a decade of experience with stone axes has no concept of how a chainsaw works. Phil, go out and USE Ada for a year or two, then I'll listen. -- :::::: Artificial Intelligence Machines --- Smalltalk Project :::::: :::::: Jan Steinman Box 1000, MS 61-405 (w)503/685-2956 :::::: :::::: tektronix!tekecs!jans Wilsonville, OR 97070 (h)503/657-7703 :::::: Brought to you by Super Global Mega Corp .com