Syntactic sugar improving 'assert' and 'error'

Version on this page:
LTS Haskell 22.30:
Stackage Nightly 2024-07-22:
Latest on Hackage:

See all snapshots assert-failure appears in

BSD-3-Clause licensed by Mikolaj Konarski
Maintained by Mikolaj Konarski
This version can be pinned in stack with:assert-failure-,2054

Module documentation for

Depends on 3 packages(full list with versions):
Used by 1 package in lts-15.3(full list with versions):

assert-failure Build Status Hackage

This library contains syntactic sugar that makes it easier to write simple contracts with ‘assert’ and ‘error’ and report the values that violate contracts. The original ‘assert’ function is here re-exported for convenience.

Make sure to enable assertions for your cabal package, e.g., by setting

ghc-options: -fno-ignore-asserts

in your .cabal file. Otherwise, some of the functions will have no effect at all.

The library emerged from the chaos of the tons of assertions (sometimes augmented by comments and trace printouts) and ‘error’ calls in the LambdaHack game engine.