Newsgroups: comp.lang.fortran
Path: utzoo!utgpu!news-server.csri.toronto.edu!mailrus!ames!haven!decuac!e2big.mko.dec.com!bacchus.pa.dec.com!decwrl!sdd.hp.com!zaphod.mps.ohio-state.edu!brutus.cs.uiuc.edu!ux1.cso.uiuc.edu!hirchert
From: hirchert@ux1.cso.uiuc.edu (Kurt Hirchert)
Subject: Re: What is the FORTRAN for ?
Message-ID: <1990Aug10.204226.8210@ux1.cso.uiuc.edu>
Organization: University of Illinois at Urbana
References: <14448@lambda.UUCP> <7404@drydock.cray.com> <662@garth.UUCP>
Date: Fri, 10 Aug 90 20:42:26 GMT
Lines: 22

In article <662@garth.UUCP> smryan@garth.UUCP (sous-realiste) writes:
...
>For example Algol68 would permit the compiler to define the operator `+' on
>two vector arguments. It could then generate an inline sequence for the
>operator, so that one could have `a[m,] + b[,n]' expand into (on a Cy205)
>
>	gather: b -> temp
>	addv: a+temp -> temp
>
>Apparently Fortran90 will also permit such. However will Fortran90 permit
>`p[m,] and q[,n]'?
>
>	gather: b -> temp
>	andv: a&temp -> temp
>
a(m,:)+b(:,n) and p(m,:).and.q(:,n) are both valid expressions in Fortran 90.
(Of course, the row of a has to have the same length as the column of b and
similarly for p and q.)  _All_ elemental operations have been so extended in
Fortran 90.
-- 
Kurt W. Hirchert     hirchert@ncsa.uiuc.edu
National Center for Supercomputing Applications
