Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.2 9/17/84 chuqui version 1.9 3/12/85; site unisoft.UUCP Path: utzoo!watmath!clyde!cbosgd!ihnp4!qantel!dual!unisoft!phil From: phil@unisoft.UUCP (phil ronzone) Newsgroups: net.arch Subject: Re: What I miss in micro-processors (fairly long) Message-ID: <568@unisoft.UUCP> Date: Wed, 25-Sep-85 03:37:44 EDT Article-I.D.: unisoft.568 Posted: Wed Sep 25 03:37:44 1985 Date-Received: Sun, 29-Sep-85 05:48:45 EDT References: <796@kuling.UUCP> <2580002@csd2.UUCP> <191@graffiti.UUCP> Reply-To: phil@unisoft.UUCP (Phil Ronzone) Organization: UniSoft Systems, Berkeley Lines: 42 In article <191@graffiti.UUCP> peter@graffiti.UUCP (Peter da Silva) writes: >> "...leaving range checks out is rather like practising sailing on >> shore with life belts and then leaving them on shore come the moment.." >> >> Knuth??? >> >> was it not the mariner probe that was lost due to a FORTRAN subscript error? >> >> I agree with you to a point. For low-risk code leave them out, But for my >> money I would prefer to see the code 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? A better analogy, perhaps, would be... > > "...like practicing sailing on shore with a mechanic [safety harness] >and leaving it on shore come the moment..." > >...you no longer have anything to attach them to. This is the kind of ``religous'' issue that probably ends up in net.flame, but 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 .... :-) :-) However - along these lines, there is a UNIX loader for a AT&T 3bx machine that allows org'ing at 4K, to leave the first page no-read/no-write to catch the hordes of AT&T invalid references to location 0. Brought to you by Super Global Mega Corp .com