Finite domain constraint solver in Haskell, based on my blog posts http://overtond.blogspot.com.au/2008/07/pre.html and http://overtond.blogspot.com.au/2008/07/haskell-sudoku-solver-using-finite.html and updated to work with more modern versions of Haskell.
Slides from my talk at Melbourne Haskell Users Group on 29th October 2015 are at https://speakerdeck.com/dmoverton/constraint-programming-in-haskell