Haskell implementation of Cleaver