This package is young; the intent is to provide basic assertions to ensure data integrity. \emph{N.B. The behavior of this package changed in version 1.0.0---% \ref{_assert_} now properly fails on non-match, not match.} The \ref{_assert_} template generates a~generic assertion using the provided predicates. If the predicates provided to the assertion fail (yields $\bot$), the system immediately terminates.\footnote{ Beacuse the system stops processing once a terminating classification yields~$\top$, only one assertion will ever match, even if others would match if execution were to continue.} \ref{_assert_} implements assertions by genearting two classifications---% one to perform the actual assertion, and a terminating classification to ensure that the assertion yields~$\top$.
There is currently one standard assertion--- \ref{_assert-nonzero_} (also called \ref{_fail-on-empty_}. \ref{_assert-nonzero_} terminates if \tt{@name@} is zero, subject to \tt{@when@}, \tt{@class@}, and any other provided predicates. This template was previously named \ref{_fail-on-empty_}, so an alias is provided for backwards-compatibility. Note that it will display a deprecation warning.