GELINASJ@CMR001.BITNET (01/18/90)
Our library has received the proposed draft FORTRAN 8X standard. In case you wonder what this new language is, let me say that i think it tries to emulate APL on an ascii terminal from these examples, where X is a vector and A is a matrix. APL FORTRAN 8X Meaning +/x/[1]A SUM(PRODUCT(A,DIM=1)) Sum of products +/(X>0)/X SUM(X, MASK=X>0) Sum of positive elements max/|X MAXVAL( ABS(X) ) Maximum norm +/|X SUM( ABS(X) ) 1-norm +/+/A SUM( A ) Sum of all elements iota 6 (* I=1,6 *) Index vector 1 2 3 4 5 6 Maybe someone can answer these questions: 1. The FORTRAN 77 standard was ready in 1978. When did APOLLO have a full FORTRAN 77 compiler ready? 2. Some company representatives do not approve this draft standard. Does HP/APOLLO have a definite position on this ? 3. What are the plans of HP/APOLLO for the next 5 years concerning FORTRAN 8X ? (Obviously some standard -maybe de facto- will have emerged in 1995, and there will not be any choice then) No need to rush your answers. But i am interrested anyhow. J. GELINAS gelinasj@cmr001.bitnet
khb@chiba.kbierman@sun.com (Keith Bierman - SPD Advanced Languages) (01/19/90)
In article <900118.00564701.063683@CMR.CP6> GELINASJ@CMR001.BITNET writes: > Our library has received the proposed draft FORTRAN 8X standard. > In case you wonder what this new language is, let me say that i think > it tries to emulate APL on an ascii terminal from these examples, > where X is a vector and A is a matrix. You have picked what many of us think is the least interesting part of the language. As a one time (and perhaps again) author of portable math libs, I found that on the order of 90% user errors were tied to misusing argument lists. Fortran 90 (which is the formal name voted by X3J3 last week) offers several features which will make it possible for providers of libraries to make life much easier for users: 1) Modules (allow packaging of related functions) 2) Keyword argument passing (user code looks like OPEN, etc.) 3) Dynamic memory allocation. 4) Operator overloading. To see why this might be good, consider the following example of a deterministic update step from kalman filtering (say a real time navigation system or some such). We start out wanting to compute U := PHI*U Where U is upper triangular, and PHI is rectangular. f77 C First we multiply rectangular phi times upper triangular c u, storing the result into W (one of the scratch arrays) c call phiu(phi,maxm,m,n,u,some scratch arrays and other grodystuff) c c Now we must re-triangularize W, storing it into U c call wgsg(w,maxw,m,n,U,scratch area, stuff) Of course, a typical Kalman code will probably also have conditional logic for the common special cases, PHI upper triangular, PHI symmetric, PHI square ... as performance counts. f90 PHI = PHI*U Which covers all cases. The code for the library writer isn't necessarily easier to write (probably a bit harder). But every user's life is simpler. Of course, I would expect to craft the library so that the old code runs just fine (this isn't hard). There is much more to the standard, but this is the sort of thing which attracted me to it back in '85. The built in array notation wouldn't have been helpful in my former life as a user and provider of portable estimation library software. 2. Some company representatives do not approve this draft standard. Does HP/APOLLO have a definite position on this ? I don't know how HP voted last week. In the past, HP has voted yes and has worked hard to make the standard real. 3. What are the plans of HP/APOLLO for the next 5 years concerning FORTRAN 8X ? (Obviously some standard -maybe de facto- will have emerged in 1995, and there will not be any choice then) One would hope that HP's long standing participation in committee work will translate into an early implementation (speaking as a alternate delegate to x3j3 and a long time user of Fortran ---- as a Sun employee I suppose we'd be better off if we beat them by a few years :>). ANSI X3 (which is composed of folks other than x3j3, but with more "global" authority) has chosen to retain X3.9-1978 as a standalone standard. ISO's counterpart, WG5, has come down strongly against this US action. ISO wants a standard Real Soon. X3J3 is working hard to finish off the document so at least there will be a World standard. It is hoped that the US action will not retard the process (by the majority of the committee which voted the document out for review :>). Those with a strong interest can sign up to be Observers (or become actual delegates). I don't have the information handy, but the cost is less than $200 (+ travel to come to meetings if one wants to be part of the process). Those interested can contact me directly. -- Keith H. Bierman |*My thoughts are my own. !! kbierman@sun.com It's Not My Fault | MTS --Only my work belongs to Sun* I Voted for Bill & | Advanced Languages/Floating Point Group Opus | "When the going gets Weird .. the Weird turn PRO" "There is NO defense against the attack of the KILLER MICROS!" Eugene Brooks