in reply to Re^35: Why is EO undefined? (More details!)
in thread Why is the execution order of subexpressions undefined?

If two pieces of code are marked as being parallelisable, then the only time you will notice the difference in the result is, if they are not actually parallelisable

Again, I have to disagree. This would mean that the only time a routine could be marked as parallelisable, is if the author of that routine knew exactly all circumstances under which it could be called--and that's not possible.

I want the authors of libraries and classes to be able to mark their routines as parallelisable, based upon what they do--without consideration to when and where they might be called. This is the only way they will be able to do so ubiquitously, without being responsible for testing every possibilty-which is impossible, and will therefore prevent anyone ever so marking their subroutines and methods.

The onus and responsibility for chosing whether to use sub and methods marked as parallelisable, in circumstances in which they will actually be called in parallel, must lie entirely with the caller--else authors will never provide that possibility. No other way will ever work.

And that requires defined EO.


Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
Lingua non convalesco, consenesco et abolesco.
Rule 1 has a caveat! -- Who broke the cabal?
  • Comment on Re^36: Why is EO undefined? (More details!)