From mboxrd@z Thu Jan 1 00:00:00 1970 To: 9fans@cse.psu.edu From: "Douglas A. Gwyn" Message-ID: <3EBDBBDC.3090300@null.net> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit References: <3EBBF24B.3020508@ameritech.net>, <1052587025.734.55.camel@pc118> Subject: Re: [9fans] same functions everywhere Date: Mon, 12 May 2003 08:56:43 +0000 Topicbox-Message-UUID: a8eac60e-eacb-11e9-9e20-41e7f4b1d025 John Murdie wrote: > (To counter my own argument, though, I remember reading something that - > I think - Doug McIlroy wrote about error handling code in telephone > exchanges; the code had been known to recover successfully from errors > that the designers had not anticipated. That said, I'd rather not trust > to such luck.) The point is, it wasn't luck, but rather a global strategy that would handle whatever had not been explcitly identified in advance as a possible problem. The problem with embedded error recovery in predicate-transform approach is that the Boolean expressions become unwieldy very quickly; by their nature exceptional conditions are a wart that don't fit cleanly into the main logic flow. If you cram them into the main flow anyway, then the complexity increases to the point that no programmer can completely grasp it. Of course, for "toy systems" almost anything will work if enough thought goes into it, but for large, intrinsically messy systems, methodology for bringing complexity under control is essential.