home *** CD-ROM | disk | FTP | other *** search
/ Usenet 1994 January / usenetsourcesnewsgroupsinfomagicjanuary1994.iso / sources / std_unix / volume.20 / text0043.txt < prev    next >
Encoding:
Internet Message Format  |  1990-08-02  |  9.0 KB

  1. From:  <jsh@usenix.org>
  2.  
  3.  
  4.            An Update on UNIX*-Related Standards Activities
  5.  
  6.                                May 1990
  7.  
  8.                  USENIX Standards Watchdog Committee
  9.  
  10.                    Jeffrey S. Haemer, Report Editor
  11.  
  12. IEEE 1003.9: FORTRAN bindings
  13.  
  14. Michael Hannah <mjhanna@SANDIA.GOV> reports on the April 23-27 meeting
  15. in Salt Lake City, UT:
  16.  
  17. FORTRAN bindings committee prepares to go to ballot
  18.  
  19. The FORTRAN bindings committee is preparing the official call for a
  20. ballot group.  Because the POSIX work is all done under the auspices
  21. of the IEEE Technical Committee on Operating Systems Standards
  22. Subcommittee (TCOS-SS), all members of the ballot group must be both
  23. regular IEEE or Computer Society members.  and members of the TCOS-SS
  24. (no extra charge to join).  Non-members may submit informative
  25. ballots, but such ballots cannot count towards the required response
  26. percentage (75%), or percentage of affirmative responses (also 75%)
  27. required for passage of the standard.  [Editor: Institutional
  28. Representatives are exceptions to this rule.  See IEEE 1003.1-1988,
  29. p. 177 for a detailed explanation of the rules.]
  30.  
  31. For more information, the appropriate membership forms, and
  32. instructions for returning the forms to the proper IEEE offices,
  33. contact the committee chair, John McGrory, at the address listed at
  34. the end of this article.  This information/sign-up packet will be
  35. available by the end of June, but you may contact the chair as soon as
  36. you want your name added to the distribution list.
  37.  
  38. The formal sign-up period is expected to be August 15 through October
  39. 19, 1990.  The ballot period is expected to last from November 9, 1990
  40. through January 4, 1991.  We are especially eager to attract a large,
  41. representative balloting group, and encourage interested individuals
  42. to sign up.  While the views represented on the P1003.9 working group
  43. have been appropriate and varied, the number of active members has
  44. been small (typically, around a dozen).
  45.  
  46. __________
  47.  
  48.   * UNIX is a registered trademark of AT&T in the U.S. and other
  49.     countries.
  50.  
  51. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  52.  
  53.  
  54.                 - 2 -
  55.  
  56. Some history
  57.  
  58. As the committee prepares to go to ballot, it might be of value to
  59. review some of the more sticky issues that the working group has
  60. addressed.  The formal, adopted charter of the committee is to provide
  61. access to the POSIX-defined, standard operating system interface and
  62. environment, directly from the FORTRAN language.  There are two major
  63. issues of scope that bear comment: ``Access to how much of POSIX?''
  64. and ``Which FORTRAN?''
  65.  
  66. Some POSIX features are easily imagined as useful to a FORTRAN
  67. application (e.g., chmod, exec, etc.); some are less easily imagined
  68. (pick your favorite obscure system call).  It was unclear where to
  69. draw the line, so the committee took the attitude of ensuring access
  70. to all features defined in 1003.1 (IEEE 1003.1-1988, or ISO/IEC 9945-
  71. 1:1990).  It seemed clear that full functional access would be
  72. provided by most vendors, so full standardization seemed called for.
  73. Some diehard C language addicts continue to ask, ``Why have any
  74. FORTRAN bindings?'' Although most vendors provide a method of calling
  75. C functions from FORTRAN, they vary from vendor to vendor.  Further,
  76. any library of C routines provided by a vendor to map FORTRAN
  77. constructs to the POSIX defined procedures is bound to differ among
  78. vendors.  The P1003.9 bindings are silent on implementation, so the
  79. FORTRAN subprograms defined in the bindings could be implemented as
  80. just such a library.  The bindings just standardize the interface.
  81. Keeping in mind the POSIX goal of application portability, only a
  82. truly complete FORTRAN binding would provide portability of any
  83. FORTRAN application.
  84.  
  85. A harder issue was, ``Which FORTRAN?'' Our choices were:
  86.  
  87.   1.  FORTRAN 77 [ANSI X3.9-1978, ISO 1539-1980 (E)],
  88.  
  89.   2.  a codification of common extensions/enhancements to FORTRAN 77,
  90.       or
  91.  
  92.   3.  the revised FORTRAN standard emerging from the ANSI X3J3
  93.       committee --  previously referred to as FORTRAN 8X but now
  94.       called Fortran 90.  (The working group has been delighted to
  95.       have an officially appointed representative of X3J3 as an active
  96.       member.) [Editor: Note that Fortran 90 will finally let us type
  97.       the name of the language without using the caps-lock key.  ``And
  98.       gain is gain, however small.''  --  Robert Browning]
  99. We chose the first.
  100.  
  101. For FORTRAN 77 vs. Fortran 90, we were swayed by the fact that FORTRAN
  102. 77 is currently the only adopted standard.  (Fortran 90 is scheduled
  103. to be adopted as an ANSI standard after P1003.9 goes to ballot.)
  104. Further, FORTRAN-77-based applications are expected to exist for some
  105. years.  Thus, the working group felt that FORTRAN-77-based bindings
  106. would be of value to the user community.  The working group expects to
  107.  
  108. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  109.  
  110.  
  111.                 - 3 -
  112.  
  113. develop a new set of bindings, based solely on Fortran 90, after
  114. completion of the FORTRAN 77 bindings (and after the Fortran 90
  115. standard is adopted).  One result of this decision is a subprogram-
  116. naming scheme that reflects the version of the language (e.g., CALL
  117. F77MKDIR(...) ).  This will ensure that there will be no name-space
  118. conflict with similar-purpose subprograms in a future Fortran 90
  119. binding.
  120.  
  121. An even harder issue, once we decided to base the bindings on FORTRAN
  122. 77, was whether to define the bindings as extensions and/or
  123. enhancements to the language itself, or simply as a library of
  124. callable FORTRAN subprograms.  While the latter was finally chosen,
  125. there was considerable argument for the former.  In fact, one
  126. extension to FORTRAN 77 was considered minimally essential.  The
  127. current document requires the language to differentiate external names
  128. unique to 31 characters, even though the FORTRAN 77 standard limits
  129. them to six.  The extension seems harmless.  Fortran 90 specifies
  130. uniqueness to 31 characters and all current FORTRAN 77 compilers
  131. researched provide this extension.  Further, since the list of P1003.9
  132. subprogram names is finite, if necessary, a vendor could provide a
  133. preprocessor to convert these names into unique strings of six
  134. characters.
  135.  
  136. If the P1003.9 bindings had defined changes to the language itself,
  137. then major missing constructs in the FORTRAN 77 language needed for
  138. easy POSIX access (most notably, structures and pointers) could have
  139. been provided by choosing either the emerging Fortran 90 constructs or
  140. an existing vendor solution.  At first the working group felt that
  141. this might be required for some access features.  However, as we
  142. struggled with each issue, working papers and proposals were
  143. introduced that resolved every one with callable FORTRAN subprograms
  144. (though some might argue about elegance or ease of use).  While we
  145. mostly steered clear of ``ease-of-implementation'' arguments, since we
  146. viewed the FORTRAN 77 bindings as an interim, we felt that vendors
  147. would be quicker to implement a library of subprograms than
  148. modifications to compilers.
  149.  
  150. A final, hard question of standard scope concerned whether to restrict
  151. the standard to 1003.1, or expand it to general, FORTRAN-application
  152. portability issues, both within and outside the POSIX arena.  Both a
  153. lack of resources and a desire to provide a timely bindings on the
  154. heels of 1003.1 made us decide to limit the scope to 1003.1
  155. functionality.
  156.  
  157. As other base standards are produced (e.g., 1003.2, 1003.4, etc.), we
  158. expect to construct and ballot bindings for those standards.  For
  159. example, we have worked with P1003.2 in defining a standardized
  160. command to invoke the FORTRAN compiler (after a number of iterations,
  161. now named fort77) which is part of their current draft.  Actual
  162. P1003.9 bindings to 1003.2 might include definitions of additional
  163. utilities of use to FORTRAN applications not mentioned in the base
  164. 1003.2 standard (e.g., f77split, f77lint, etc.).
  165.  
  166. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  167.  
  168.  
  169.                 - 4 -
  170.  
  171. Another argument against adding features was that many, if not most,
  172. of the problems we saw in portability are solved by new constructs in
  173. Fortran 90.  Many of us felt that as a standards group we should only
  174. provide a minimum set of features for ``perhaps-soon-to-be-obsolete''
  175. FORTRAN 77, and thereby speed up the date for providing full bindings
  176. to the new Fortran 90, which provides more features for application
  177. portability.
  178.  
  179. How to get involved
  180.  
  181. If you have strong feelings about these issues, the most effective
  182. avenue to express them at this point is to join the balloting group
  183. being formed.  Nevertheless, if you wish to discuss them before this
  184. you can also directly contact the chair (John McGrory) or me (vice-
  185. chair, Michael Hannah), or join the e-mail discussion group.
  186. Addresses follow:
  187.  
  188. P1003.9 Chair
  189. John McGrory
  190. Hewlett Packard Co.
  191. Division 2615
  192. 19046 Pruneridge Avenue
  193. Cupertino, Ca 95014
  194. mcgrory%hpda@HPLABS.HP.COM
  195.  
  196. P1003.9 ViceChair
  197. Michael Hannah
  198. Sandia National Labs
  199. Albuquerque, NM 87185
  200. mjhanna@SANDIA.GOV
  201.  
  202. Un-moderated mailing list:
  203. posix-fortran@SANDIA.GOV
  204. To join the list, send request to:
  205. posix-fortran-request@SANDIA.GOV
  206.  
  207. May 1990 Standards Update                IEEE 1003.9: FORTRAN bindings
  208.  
  209. Volume-Number: Volume 20, Number 43
  210.  
  211.