RE: Non-determinism, backtracking and Monads