Qual é o raciocínio por trás de tornar o não-determinismo uma característica de Haskell?

Sabemos que no Prolog - predicados não determinísticos são um recurso usado para diminuir problemas combinatórios . Em Haskell, vemos um comportamento não determinístico semelhante ao Prolog na lista Mônada . Em Haskell, também vemos o não determinismo na escolha da ordem de avaliação thunk :...