cdb@hpclcdb.HP.COM (11/17/87)
One comment on the notes seen so far on the net (and in print articles) - the most common misconception I keep hearing is about COMMON, etc being removed in F8x. This is flat wrong. The "language evolution" concept is described as a three-step process : 1) Deleted features, removed in Fortran 8x : NONE. F8x is a proper superset of F77. Care has been taken to even preserve the interface to assembly code routines called from F77. Only exceedingly dull vendors will obsolete anything - and standards committees can't legislate stupidity out of existence. 2) Obsolescent features, redundant even in Fortran 77. These are retained in F8x, but marked for possible deletion in Fortran 9Y (the next standard after F8x, call it what you may). The features on the obsolescent list: A) Arithmetic (three-label) IF B) DO loops using REAL or DOUBLE PRECISION loop control variables C) Terminating multiple DO loops on a single statement D) Branching to an END IF statement from outside its IF block E) Alternate returns from subroutines F) PAUSE statement G) ASSIGN statement, assigned GO TO, and assigned format specifiers THESE are the features you MIGHT see go away in your programming life, not the Deprecated list below. 3) Deprecated features, redundant in Fortran 8x. These are features which X3J3 thinks have better variants in Fortran 8x, but for which there is no reasonable replacement already available. This list (in my opinion) is rank speculation on what a committee for the second revision after this might think about replacing. On the historical schedule, this discussion will occur at least twenty years from now. At age 35, I can say with certainty that I will see a Fortran compiler without COMMON in my retirement, if then. The world of computing moves very fast - the only prediction I feel certain of is that the whole question of what Fortran should be will look very different in 2007. The list: A) Assumed-size dummy arrays B) Passing an array element or substring to a dummy array C) BLOCK DATA program units D) COMMON statement E) ENTRY statement F) EQUIVALENCE statement G) Fixed source form H) Specific names for intrinsic functions I) Statement functions J) Computed GO TO K) Old form of the DATA statement and allowing DATA statements mixed into executable code L) DIMENSION statement M) DOUBLE PRECISION statement N) Character length declarations bye *len syntax Appendix B of the draft Standard describes the replacements proposed for these features - I intend to let my children (if any) fight out the details and my grandchildren implement them. Carl Burch hplabs!hpda!cdb
cik@l.cc.purdue.edu (Herman Rubin) (11/18/87)
The article gives 21 FORTRAN features slated for eventual deletion. Some of them I have not used, but about 15 of them are simple constructs, easy to use, and not easily replaced by anything reasonable. I suspect that another person will find the same about the ones I have not appreciated. We need more powerful languages, not language police. -- Herman Rubin, Dept. of Statistics, Purdue Univ., West Lafayette IN47907 Phone: (317)494-6054 hrubin@l.cc.purdue.edu (ARPA or UUCP) or hrubin@purccvm.bitnet