Cyclic terms

Discussion on the revision of the current Core standard

Moderator: Paulo Moura

Cyclic terms

Postby amd » Thu Sep 13, 2007 4:44 pm


I have a few comments about the part of the Proposal that deals with cyclic terms:

1 - The proposal should explain the meaning of "STO" (which, I believe,
is "subject to occurs-check").

2 - I don't understand if "unification_subject_to_occurs_check == fail"
only implies that =/2 is equivalent to unify_with_occurs_check/2, or if
it implies that the whole system runs in a full occurs-check mode.

3 - I don't agree with part of what "unification_subject_to_occurs_check
== cyclic" implies. Each implementation is allowed choose the built-in
predicates that know how to handle cyclic terms, but this is not useful
for the programmer. The standard should specify a minimum set of
built-in that the programmer could rely on. Probably the following
predicates, or even some more:
=/2, \=/2,
compare/3, ==/2, \==/2, @</2, @>/2, @=</2, @>=/2,
sort/2, msort/2, keysort/2,
ground/1, term_variables/2, numbervars/3, subterm/2,

Best wishes,

- Artur Miguel Dias
Posts: 1
Joined: Thu Sep 13, 2007 3:04 pm

Return to Core Revision

Who is online

Users browsing this forum: No registered users and 1 guest