Newsgroups: comp.lang.c Path: utzoo!henry From: henry@utzoo.uucp (Henry Spencer) Subject: Re: Out of range pointers Message-ID: <1988Oct1.221726.10698@utzoo.uucp> Organization: U of Toronto Zoology References: <867@osupyr.mast.ohio-state.edu> <3200@geac.UUCP> <1430@ficc.uu.net> <1988Sep15.145026.20325@ateng.uucp> <16041@ism780c.isc.com <28227@think.UUCP> <8557@smoke.ARPA> <33666@XAIT.XEROX.COM> <8564@smoke.ARPA> <33789@XAIT.XEROX.COM> <835@proxftl.UUCP> Date: Sat, 1 Oct 88 22:17:26 GMT In article <835@proxftl.UUCP> bill@proxftl.UUCP (T. William Wells) writes: >... I routinely write code that does not do *any* parameter >validation. And my debugged code almost never breaks in a way >that would have been caught by parameter validation (or, for that >matter, by most of the other tricks of the robust-is-god school), Be careful... hubris tends to be followed by nemesis. Implementing extra checking has a nasty habit of catching errors that *weren't* caught by normal debugging. It often finds them even in "production" code. Scary but true. The experience of preparing my regexp library for posting convinced me that time spent in more paranoid testing is almost never wasted. The code was ready to go (I thought). I did up a quick regression-test widget so that other people could tell whether the thing was working on their weird machine after being compiled by their weird compiler. I ran it on my machine and several of the test cases failed. Oops. I then spent considerably more effort on building a fairly thorough set of test cases, over 100 of them. It paid off. The thing *STILL* had a bug or two that were found by others after I posted it, but it was much more solid than when I *first* thought it was ready to post. -- The meek can have the Earth; | Henry Spencer at U of Toronto Zoology the rest of us have other plans.|uunet!attcan!utzoo!henry henry@zoo.toronto.edu