Charles Mills wrote: <begin extract> Why would a rational programmer cause an "empty" record to be written in the first place? <end extract>
I can think of some reasons for doing so. They are, I suppose, few; but that is not, I think, the issue. I recently encountered an MFU-update application that behaved very badly when presented with an update-transaction file that was empty; I know of an insurance application that misbehaves when a customer attempts to insure more than four vehicles; etc., etc. In my now long experience it has been brought home to me over and over again that boundary values are the chief sources of pathological behavior. Systems, and subroutines, are usually tested for and thus work for normal, workaday values. Some few well designed programs work for boundary values too, but they are uncommon. For this reason questions that begin with such language as "Why would a rational programmer . . . " are, I suspect, almost always misconceived. Imaginative failures about what someone else may reasonably wish to do with a facility are common. Boundary values are thus the problem. They must be handled correctly and appropriately, and systems and subroutines must be tested to ensure that they are. --jg ---------------------------------------------------------------------- For IBM-MAIN subscribe / signoff / archive access instructions, send email to [email protected] with the message: INFO IBM-MAIN
