Liquid Haskell
From HaskellWiki
Liquid Haskell allows to annotate code with invariants that complement the invariants imposed by the types. These invariants are checked with an SMT solver.
Such invariants may be non-negative numbers, sorted lists, matching lengths of lists, membership of certain elements in aSet
Map
- Hackage: liquidhaskell
- Blog
- Online demo