We describe how to embed a simple typed functional logic programming language in Haskell. The embedding is a natural extension of the Prolog embedding by Seres and Spivey. To get full static typing we need to use the Haskell extensions of quantified types and the ST-monad.
http://gup.ub.gu.se/records/fulltext/99880.pdf