Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!tut.cis.ohio-state.edu!ucsd!hub!eiffel!bertrand From: bertrand@eiffel.UUCP (Bertrand Meyer) Newsgroups: comp.lang.eiffel Subject: Re: Implies Summary: implies is there Message-ID: <202@eiffel.UUCP> Date: 6 Oct 89 17:54:21 GMT References: <1473@moondance.cs.uq.oz> Organization: Interactive Software Engineering, Santa Barbara CA Lines: 26 In article <1473@moondance.cs.uq.oz>, gjc@batserver.cs.uq.oz (G.J. Cumming) suggests two new operators, implies and limplies, such that P implies Q means not P or Q P limplies Q means not P or else Q In fact, version 2.2 includes the implies operator, with the semantics he suggests for limplies (or else). It was not felt necessary to include two versions, and the most useful semantics seemed to be the non-strict one (``non-strict'' operators being those such as `and then', `or else' and the new `implies' which may yield a result even when one of their operands is not defined). As a minor syntactic comment, no Eiffel keyword is an abbreviation, so that a different name would have had to be found for `limplies' had two operators been retained. > Maybe not a great change, but certainly makes reading an > assertion a bit easier. Indeed, `implies' has so far been used essentially in assertions, and many assertions of the Data Structure Library have been made simpler through its introduction. -- Bertrand Meyer bertrand@eiffel.com