Constraint satisfaction problem (CSP) solvers for Haskell