Specifications of 'any', 'all', 'findIndices'

Bjorn Lisper [email protected]
Tue, 23 Jan 2001 13:52:41 +0100 (MET)

>map is data parallel. foldr not so obviously...

Sorry, a slip on my behalf: foldr in general is not data parallel, but if
the function being folded with is associative then foldr can be implemented
by a parallel (balanced binary-tree) reduction in time O(log n), where n is
the length of the list.

A compiler needs the information that or is a fold over an associative
operation in order to employ such a parallel implementation.

Bj鰎n Lisper