Recently, David Overton presented the core of a finite-domain constraint solver written in Haskell. Trying to extend the solver, I soon noticed that the only way to look into the constraint store is to enumerate all solutions by means of the labeling function.