(j3.2006) Optional parts of programming languages

Bill Long longb
Fri Aug 24 14:33:29 EDT 2007

Aleksandar Donev wrote:
>> Co-arrays are a bit harder to implement than that
> Of course, on systems where the vendors want to actually provide parallelism. 
> The important point is that this is not required. We don't specify anything 
> about what the number of images is and what the relation to hardware or other 
> parallelization is.
We don't require that vendors support array sizes greater than 100 
either, but on a system with enough memory to hold larger arrays, there 
is an implicit assumption that the "obvious" support will be provided.  
Similarly, if a compiler vendor sells its compiler for use on a parallel 
system, then claiming that it "does not have to" support more than one 
image is just not an acceptable response to the customer.  The goal is 
code portability, and that requires widespread implementation.  The 
point of putting co-arrays into the standard is to promote that 
widespread implementation which then enables portability.  We should not 
forget that we are advancing Fortran mainly for the benefit of the 
users, both the ones explicitly asking for co-arrays now, and also the 
ones that have not yet figured out that parallel programming is the 
order of the day, but probably will by the time the standard is actually 


Bill Long                                   longb at cray.com
Fortran Technical Support    &              voice: 651-605-9024
Bioinformatics Software Development         fax:   651-605-9142
Cray Inc., 1340 Mendota Heights Rd., Mendota Heights, MN, 55120


More information about the J3 mailing list