home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!pipex!doc.ic.ac.uk!uknet!nplpsg!rss
- From: rss@seg.npl.co.uk (Roger Scowen)
- Newsgroups: comp.lang.prolog
- Subject: Re: Occurs check
- Message-ID: <1992Dec16.114524.21371@seg.npl.co.uk>
- Date: 16 Dec 92 11:45:24 GMT
- Sender: rss@seg.npl.co.uk (Roger Scowen)
- Organization: National Physical Laboratory, UK
- Lines: 38
-
-
- Jussi.Rintanen@hut.fi
- (Message-ID: <1992Dec13.173016.8849@nntp.hut.fi>) asks:
-
- > Question 1: What implementations of Prolog implement the occurs check?
- > (Our university has both Sicstus and NU-Prolog.)
-
- The current draft International Standard for Prolog provides built-in
- predicates
-
- 1) unify_with_occurs_check/2
-
- For any arguments unify_with_occurs_check(X, Y) always
- succeeds or fails, and never generates an error or
- gives an undefined result.
-
- 2) =/2 (unifies)
-
- When unification involves infinite trees either as arguments
- or as a partial result of some top-down unification algorithm,
- the behaviour is undefined. A standard-conforming processor
- might consistently succeed or fail for a unification that is
- formally undefined. This predicate can be implemented
- much more efficiently than unify_with_occurs_check/2.
-
- For more information, see
- R S Scowen, "An overview of Prolog standardization
- --- progress, problems and solutions", pp922-936
- of "Logic programming --- proceedings of the eighth
- international conference" (K Furukawa: Editor, MIT Press,
- Cambridge, Massachusetts, 1991. ISBN 0-262-56058-5.)
-
- Roger Scowen (ISO/IEC JTC1 SC22 WG17 Prolog convener),
- DITC/93, National Physical Laboratory,
- Teddington, Middlesex, Great Britain TW11 0LW
- Telephone: +44 81 943 6956
- E-Mail: rss@seg.npl.co.uk Fax: +44 81 977 7091
- 18 December 1992
-