Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Path: utzoo!linus!security!genrad!grkermit!masscomp!clyde!ihnp4!zehntel!hplabs!sri-unix!SHardy@SRI-KL From: SHardy@SRI-KL@sri-unix.UUCP Newsgroups: net.lang.prolog Subject: Use of Assert Message-ID: <12421@sri-arpa.UUCP> Date: Mon, 10-Oct-83 23:39:07 EDT Article-I.D.: sri-arpa.12421 Posted: Mon Oct 10 23:39:07 1983 Date-Received: Tue, 18-Oct-83 03:44:03 EDT Lines: 27 A recent message on the use of Assert seemed to imply that it, and Retract, shouldn;t be used because neither is well implemented on the DEC-10 and both are, in fact, quite hard to implement. In general, I think it a bad idea to object to using a feature of a langauge because it is often badly impelemented. If carried to an extreme, this view becomes silly. I once saw an article ``refuting'' the claim that Prolog was inefficient by saying that the claimant had not programmed ``idiomatically'' (I.e. had used Assert) and so, presumably, deserved all he got. Although Assert is ``not very logical'', it can be extremely useful. Without Assert one could not implement SetOf. Without SetOf all kinds of things (such as making use of a closed world assumption) are hard. Crucially, Prolog now has several classes of user. Some are concerned with its purity and logical roots; others are concerned with getting fast performance out of Prolog on Von Neumann machines; others are concerned with using Prolog to solve some problem. Why should the last group be bothered by the concerns of the first two? -- Steve Hardy, Teknowledge