From METCALF@crnvma.cern.ch Fri Mar 12 18:51:57 1993
Received: from vm.uni-c.dk by dkuug.dk with SMTP id AA23772
  (5.65c8/IDA-1.4.4j for <sc22wg5@DKUUG.DK>); Mon, 15 Mar 1993 17:40:19 +0100
Received: from vm.uni-c.dk by vm.uni-c.dk (IBM VM SMTP V2R2) with BSMTP id 4232;
   Mon, 15 Mar 93 17:40:54 DNT
Received: from CERNVM.CERN.CH by vm.uni-c.dk (Mailer R2.07) with BSMTP id 3491;
 Mon, 15 Mar 93 17:40:51 DNT
Received: from CERNVM.CERN.CH (NJE origin METCALF@CERNVM) by CERNVM.CERN.CH
 (LMail V1.1d/1.7f) with BSMTP id 8730; Mon, 15 Mar 1993 17:40:06 +0100
Resent-Date:  Mon, 15 Mar 93 17:39:50 SET
Resent-From: Michael Metcalf <METCALF@crnvma.cern.ch>
Resent-To: sc22wg5@dkuug.dk, goossens@crnvma.cern.ch
Return-Path: <@CERNVM.CERN.CH:chk@CS.RICE.EDU>
Received: from CERNVM (NJE origin SMTPIBM@CERNVM) by CERNVM.CERN.CH (LMail
          V1.1d/1.7f) with BSMTP id 3188; Sat, 13 Mar 1993 09:10:37 +0100
Received: from dxmint.cern.ch by CERNVM.CERN.CH (IBM VM SMTP V2R2) with TCP;
   Sat, 13 Mar 93 09:10:35 SET
Received: by cs.rice.edu (AA00960); Sat, 13 Mar 93 00:51:57 CST
Date: Sat, 13 Mar 93 00:51:57 CST
From: chk@cs.rice.edu (Charles Koelbel)
Message-Id: <9303130651.AA00960@cs.rice.edu>
To: hpff@cs.rice.edu, hpff-core@cs.rice.edu
X-Charset: ASCII
X-Char-Esc: 29

FYI.
    Mike
----------------------------Original message----------------------------
High Performance Fortran Update - The Short Form

The High Performance Fortran Forum had its last scheduled meeting March
10-12 in Dallas, TX.  Based on public comments, there will be a fair
number of editorial and technical changes to the draft specification.
We hope to have a revised (and proofread) version available May 3 on the
usual FTP and email archive servers.  Until then, I'll try to summarize
the more important changes to the draft.  There are many misspellings,
wording changes, and fine technical changes as well.

Hopefully, full minutes (for this meeting and the last two) will appear
in a few weeks.  First priority goes to getting the next version of the
specification done, though.


Global Changes:

Commentary material will be formatted to make it distinct from formal
specification material (for example, by putting it in a smaller font -
the exact LaTeX macros haven't been finished yet).  We hope this will
satisfy comments from both language experts, who hated the "fluff", and
neophytes, who appreciated the tutorial.

More cross-referencing, including numbering of syntax rules, will be
added.  Unfortunately, line numbers are impossible in LaTeX (but we're
working on something similar).

We're adopting the ISO convention that "Chapters" should be named
"Sections" and "Appendix" should be "Annex".

To reduce confusion, the next version of the specification will be named
"hpf-v10-final.*" on the file servers.  The title page will also delete
the word "DRAFT".


Section 2 - HPF Terminology:

At least a dozen readers caught the incorrect distribution declarations
associated with some of the examples.  I'm properly embarrassed, and have
fixed the offenses.

The insignificant blank controversy: All HPF syntax has been fixed to be
unambiguous even if blanks are not significant.  Blanks are, however,
significant *in the directives only*.  This allows "dumb" preprocessors
to parse ALIGN and DISTRIBUTE with a minimum of lexing problems.


Section 3 - Data Distribution

Remove the "index space" terminology, reverting to "template" which it
replaced.

Eliminate the VIEW directive.  (It will appear in the Journal of
Development.)

To eliminate syntactic ambiguity,
	!HPF$ ALIGN A WITH B
has been removed.  The same effect can be achieved by either of the
following:
	!HPF$ ALIGN A(:,:) WITH B(:,:)
	!HPF$ ALIGN WITH B :: A

Restrict the forms of expressions allowed in the align-subscript
expressions in full HPF so that at most one occurrence of an align-dummy
is allowed.  Remove further restrictions on align-subscript from Subset
HPF.  The result is that the following are allowed in HPF and in Subset HPF:
	!HPF$ ALIGN B(I) WITH A(2*I+3)
	!HPF$ ALIGN C(I) WITH A(-2*(2-I)+7)
But the following is not:
	!HPF$ ALIGN WRONG(J) WITH A(J*3-J+3)

Delete all references to the Cheshire cat and all words beginning with
"MELL".  (Andy Meltzer took exception to deleting all words beginning
with "MEL".)


Section 4 - Data Parallel Statements and Directives

Change the title from "Statements" to "Data Parallel Statements and
Directives".

Restrict functions in the mask of a FORALL to be PURE.  Do not
*syntactically* restrict functions called in index bounds expressions;
however, if the values of the bounds depend on the order in which they
are evaluated then the program is not HPF-conforming (this is the same
restriction as on DO loop bounds).

Change the PURE directive to a full-fledged attribute on the function,
similar to RECURSIVE.

We rejected suggestions to eliminate INDEPENDENT, make INDEPENDENT into a
new statement (i.e. not a directive), and generalize INDEPENDENT.  This
section will have more editing than most others to improve clarity of
expression.


Section 5 - Intrinsics and Standard Library

Change the MODULE name from "HPF_LIB" to "HPF_LIBRARY".


Section 6 - EXTRINSIC Procedures

The syntax for declaring an EXTRINSIC procedure is now
	INTERFACE
	  EXTRINSIC(HPF_LOCAL) SUBROUTINE FOO(BAR)
	  REAL BAR(:)
	  !HPF$ DISTRIBUTE BAR(BLOCK)
	  END SUBROUTINE
	END INTERFACE
HPF_LOCAL is the name of the programming model; the syntax was picked to
allow other programming models.

The description of HPF_LOCAL functions was moved to an annex, since the
model is not portable to some parallel architectures.

Section 7 - Parallel I/O

This chapter has been eliminated.  (Appropriate explanations will be
moved to the introduction and Journal of Development.)


Annex A - Journal of Development

This chapter has been made into a separate document.



Magic cookie:
If you've read this far, you may be interested in seeing the official HPF
t-shirt.  Send me email if you'd like to see the design (in postscript)
or order a shirt ($15 + shipping).
