(j3.2006) (SC22WG5.5233) [ukfortran] Ballot on draft DTS

N.M. Maclaren nmm1
Fri Apr 18 15:39:38 EDT 2014

On Apr 18 2014, Damian Rouson wrote:
>On Apr 15, 2014, at 12:35 AM, Malcolm Cohen <malcolm at nag-j.co.jp> wrote:
>> In particular, (1) the collectives CO MAX, CO MIN, CO REDUCE, CO SUM, 
>> should be split into two forms, one with RESULT, one without. The one 
>> with RESULT should have SOURCE as INTENT(IN), the one without should 
>> have SOURCE as INTENT(INOUT). RESULT must not be optional. The SOURCE 
>> INTENT(IN) form should have no coarray restrictions on SOURCE.
> Is the reasoning here that there is a potential performance advantage 
> that can be preserved in the "INTENT(IN)" case? If so, I agree that 
> performance is paramount. If not, please explain the reasoning for 
> wanting two forms rather than having RESULT optional.

I cannot speak for Malcolm, though I am pretty sure that I know his
opinion, but I have tried to explain some much more important objections
in my response.  They are to do with variable definition context, read-only
arguments/objects and software engineering.  Modern Fortran is pretty good
in this respect, and this specification drives a horse and cart through its
basic model.

Nick Mac;aren.

More information about the J3 mailing list