(j3.2006) Liaison to IFIP WG 2.5
Thu Aug 23 12:32:50 EDT 2007
Lawrie Schonfelder wrote:
> processor that can benefit from co-arrays should implement them as per the standard but a vendor who
I repeat: We are supporting programmers here and the portability of
their codes. We are not designing a "help the vendor(s) make money with
no extra work" manual. That is for Venture Capitalists, not language
> is not likely to benefit from them should not have to add them to his implementation of Fortran.
> To the user they are a significant complication. If they are in the core language they will have to
> be taught and will make the language more difficult.
The same argument goes for parameterized derived types. It may appear to
you that they are a "natural" extension of Fortran 90's handling of
intrinsic types. Maybe the kind ones are, but kind-type parameters are
badly broken in Fortran 2003 with respect to type-bound procedures and
genericity in general (Van has explained this many times). As to
non-kind parameters, they really have much more features than was ever
offered for character strings (ex., deffered-kind parameters), and
besides, strings in Fortran 90 (and probably 77) are a hodge-podge with
three bad ideas for every good one (this is from practical experience
using them...I have not used the new PDT's yet). So PDTs (especially
non-kind parameters) offer significant complication to both people
learning/teaching the language and especially to compilers. Try teaching
it to people that are not originally Fortran programmers...
This is why I appear angry to you---I am frustrated at the inconsistency
of your own arguments, not that PDTs were added. The only difference
that I can see is that you found the parameterized DT feature useful for
variable strings and helped design it, whereas you don't (want to?)
understand co-arrays and find them not warranting the same status of
inclusion in the standard as PDTs or any other major feature.
Every feature complicates the language, the compiler, and its teaching
(unless, of course, like John Wallin, you are teaching parallel
programming!). Fixing to attack co-arrays at this late stage using such
arguments is absurd.
More information about the J3