A Monadic Implementation of Functional Logic Programs