YAP 7.1.0
predicate

Detailed Description

Modules

 The Module System versus the meta-call.
 

 

Class Documentation

◆ meta_predicate/3

class meta_predicate/3

meta_predicate(G1 , Gj , Gn)

properties: directive

Declares that this predicate manipulates references to predicates Each Gi is a mode specification

If the argument is :, it does not refer directly to a predicate but must be module expanded If the argument is an integer, the argument is a goal or a closure and must be expanded Otherwise, the argument is not expanded Note that the system already includes declarations for all built-ins

For example, the declaration for call/1 and setof/3 are:

:- meta_predicate call(0), setof(?,0,?).
call( 0:P )

meta_predicate declaration implemented by asserting

meta_predicate(SourceModule,Declaration)