On Tuesday, July 13, 2004, 4:27:24 AM, Sean wrote:

> This isn't a trivial point; there are serious reasons for enforcing
> purity in functional programming, unlike the common reasons for
> enforcing purity in OO languages which often are based on aesthetic
> reasons. Purely functional are verifiable and thread safe, which can
> be important.

Indeed, there are (theoretically) serious optimisation gains to be
made at runtime if it's a pure FP environment: as there are no
side-effects, the call graph can be analyzed and broken into threads,
with results combined later.  A good way to get the most out of big
iron.  I think this is probably still a matter of research, though.

Cheers,
Gavin