Exception raised by built-in primitives for domain-specific failures — type errors, division by zero, and the "would require complex / irrational" cases that Schooner does not implement.
Kept distinct from Schooner.Eval.Error because primitives report a
different vocabulary of failures than the evaluator. Tests can pattern
on :reason to pin behaviour without coupling to wording.