maplist(call, Gs)
recreates the attributes for Copy. The nonterminal
attribute_goals//1, as defined in the modules the attributes stem from,
is used to convert attributes to lists of goals.
This building block is used by the top level to report pending attributes in a portable and understandable fashion. This predicate is the preferred way to reason about and communicate terms with constraints.
The form copy_term(Term, Term, Gs)
can be used to reason
about the constraints in which Term
is involved.
term_attvars(Term,[])
in an efficient test that Term
has
no attributes; scanning the term is aborted after the first
attributed variable is found.