=:= ( quot: ( env -- n m ) -- goal )


Vocabulary
logic

Inputs
quota quotation


Outputs
goala logic-goal


Word description
The quotations takes an environment and returns two values. =:= returns the internal representation of the goal which returns t if values returned by the quotation are same numbers. =:= is intended to be used in a quotation. If there is a quotation in the definition of rule, logic uses the internal definition of the goal obtained by calling it.

See also
(==), =\=

Definition


:: =:= ( quot: ( env -- n m ) -- goal )
quot collect-logic-vars :> args quot "[ %u =:= ]" sprintf
<pred> :> =:=-pred =:=-pred args logic-goal boa :> =:=-goal
V{
{
=:=-goal
[| env |
env quot ( env -- n m ) call-effect 2dup
[ number? ] both? [ = ] [ 2drop f ] if
]
}
} =:=-pred defs<< =:=-goal ;