Lysxia / test-monad-laws

QuickCheck properties for monad classes
MIT License
7 stars 1 forks source link

Testable monad and mtl laws

A library for testing implementations of mtl classes.

test-monad-laws defines laws for monadic effects as QuickCheck properties.

To use this library, quickcheck-higherorder is also needed.

Supported classes:

This project also tests the effectiveness of these laws, by including some incorrect implementations, called mutants, and some invalid laws.

Organization

For every mtl class, for example MonadReader:

Related links and references

Papers with some relevant laws:

Hackage search terms: laws, properties.