16.4 Creating Attributed Variables
A new attribute can be added to a variable
using the tool predicate
add_attribute(Var, Attr).
An attribute whose name is not the current module name
can be added using add_attribute/3 which is its tool
body predicate (exported in sepia_kernel).
If Var is a free variable, it will be bound to a new attributed variable
whose attribute corresponding to the current module is
Attr and all its other attributes are free variables.
If Var is already an attributed variable and its attribute is uninstantiated,
it will be bound to Attr, otherwise the effect of this predicate
will be the same as unifying Var with another attributed variable
whose attribute corresponding to the current module is
Attr.