The default is rather brutal: an undefined path halts the inference machine and exits the programme with an error message. We take this to be the intended semantics.
Alternatively, a flag -u can be set, which causes the interpreter to respond with the null value.
We considered including a command line option which permits an arbitrary response atom to be defined, but this would have meant a non-trivial change in the present implementation concept, in which atom values have to be known at compile time. We have noted that there is no standard `undefined' atom in current implementations, and have therefore not included one.
However, we note that a semantics which yields a designated atom such as '!_UNDEFINED_!' has an equivalent formlation in terms of regular DATR semantics, and can be understood as a macro built-in for incorporating the equation
<> == '!_UNDEFINED_!'
at all relevant points in the DATR theory.
For these reasons, we deem the cost-benefit ratio of the command line option for defining an arbitrary atom to be rather low, and have therefore not pursued this option.