PPT Slide
Speculative Parallelism in Functional Languages
Ideally we should evaluate b(x), f(x) and g(x) in parallel.
But suppose g(x) is only defined for values of x for which b(x) = false?
The program may execute correctly sequentially but fail if executed in parallel.