Path: utzoo!utgpu!news-server.csri.toronto.edu!cs.utexas.edu!samsung!uunet!munnari.oz.au!brolga!bunyip.cc.uq.oz.au!uqvax.decnet.uq.oz.au!wattle!cszthomas From: rnews@qut.edu.au Newsgroups: comp.lang.eiffel Subject: Re: RE: Exceptions and Assertions Message-ID: <14932.26ecec80@qut.edu.au> Date: 11 Sep 90 13:54:08 GMT References: <1990Sep7.032121.6456@bony1.uucp> Organization: Queensland University of Technology Lines: 31 > In his reply, Bertrand Meyer asks: > >>Should we tend towards a situation where precondition checking >>will always be on, even in a released software product? > > Yes! Yes! Yes! A million times yes! Let's use those MEGA-MIPS for > something useful. I don't believe we can ever write software that is > error free, we can at least write software that detects errors before > doing too much damage. Hardware detects errors, why not software? From the theoretical view point I agree that we should always test preconditions (and preferably postconditions and all assertions). From the practioners view point I disagree. Software is getting ever more complex (not including assertion testing already) and there is a ever growing need for faster hardware to allow software to execute at an usable speed. As running Eiffel programs with full assertion testing shows, assertion testing is a very heavy overhead, and is unacceptable in most commercial applications. Always testing assertions at runtime can only be done when we have an efficient method of checking assertions (having a separate processor and process for testing pre/post conditions would be an interesting project. Au revoir, @~~Richard Thomas aka. The AppleByter -- The Misplaced Canadian~~~~~~~~~~~@ { InterNet: R_Thomas@qut.edu.au ACSNet: richard@earth.qitcs.oz.au } { PSI: PSI%505272223015::R_Thomas } @~~~~~School of Computing Science - Queensland University of Technology~~~~~~@