Constructors for optional term references. A reference is either empty or holds a term. References should be regarded as opaque terms and always used with the
optional/1 object by passing the reference as a parameter.
Type-checking support: This object also defines a type
optionalfor use with the
Constructs an empty reference.
Constructs a reference holding a term.
Constructs a reference by calling
Goal that binds and holds
Term on success. Returns an empty reference if the goal fails or throws an error.