Map is a function that really can be evaluated in parallel. There is a
project at Heriot-Watt university that translates pure SML programs to run
on a parallel processor. Array.map can potentially be run in parallel on
SIMD machines too. So there is an argument for not specifying the order of
traversal of these functions (although this need not affect the language
definition).
Dave.
-----Original Message-----
From: Hugo Herbelin [mailto:Hugo.Herbelin@inria.fr]
Sent: Thursday, October 12, 2000 2:27 PM
To: garrigue@kurims.kyoto-u.ac.jp
Cc: caml-list@inria.fr
Subject: Re: Undefined evaluation order: define it for constructors ?
[Excerpt]
It is sometimes useful to do side-effects with "List.map" (or
"Array.map"): it leads to code more readable than if using
"fold_left". I'd be happy if the evaluation order of "map" in the
interface were specified, as it is the case (for a good reason) for
the "iter" functional.