Availability:built-in
?- A = point{x:1, y:2}.put(x, 3). A = point{x:3, y:2}.
This predicate can also be accessed by using the functional notation, in which case Key can also be a *path* of keys. For example:
?- Dict = _{}.put(a/b, c). Dict = _6096{a:_6200{b:c}}.