exception(+Exception, 
+Context, -Action)
If this hook predicate succeeds it must instantiate the Action 
argument to the atom fail to make the operation fail 
silently,
retry to tell Prolog to retry the operation or error 
to make the system generate an exception. The action retry 
only makes sense if this hook modified the environment such that the 
operation can now succeed without error.
- undefined_predicate
 - Context is instantiated to a predicate indicator ([module]:<name>/<arity>). 
If the predicate fails, Prolog will generate an 
existence_errorexception. The hook is intended to implement alternatives to the built-in autoloader, such as autoloading code from a database. Do not use this hook to suppress existence errors on predicates. See also unknown and section 2.13. - undefined_global_variable
 - Context is instantiated to the name of the missing global 
variable. The hook must call nb_setval/2 
or b_setval/2 
before returning with the action 
retry.