bb_put/4

Stores a term with a key in an inner blackboard.

bb_put(+Board, +OuterKey, +InnerKey, +Term)

bb_put/4 stores a key/value tuple in an inner blackboard accessed with OuterKey. If there is no tuple OuterKey/InnerBoard in Board a new inner blackboard will be created and stored in Board.
This predicate is equivalent to:

( bb_get(Board, OuterKey, SubBoard) ->
    bb_put(SubBoard, InnerKey, Term)
;    bb_create(SubBoard),
    bb_put(SubBoard, InnerKey, Term),
    bb_put(Board, OuterKey, SubBoard)
)

Arguments

Board              blackboard
OuterKey           ground term
InnerKey           ground term
Term               term

Examples

    bb_create(Family),
    bb_put(Family, john, father, joe),
    bb_put(Family, john, mother, clara),
    bb_put(Family, emily, father, mike),
    bb_get(Family, john, Parent, Name)
->
    Parent = father
    Name = joe
and
    Parent = mother
    Name = clara

Standard

This predicate is not part of the ISO-Prolog Standard.

See also

bb_clear/1, bb_clear_2/2, bb_create/1, bb_contains/2, bb_contains_key/2, bb_get/3, bb_get_4/4, bb_put/3, bb_put_4/4, bb_remove/2. bb_keys/2. bb_elements/2.


Darueber read on...