Curry is a functional logic programming language, based on the Haskell language, that combines elements of functional programming and logic programming.

See http://www.informatik.uni-kiel.de/~mh/curry/