02-311r1 Feature Changes To: J3 From: Craig Dedo Date: November 13, 2002 Subject: Feature Changes Date: 28 Oct 2002 To: J3 From: Richard Maine Subject: Feature changes The following are proposed public comments relating to features to be included or omitted from f2k. 1. I propose that the enum feature be deleted. As currently constituted, it adds almost no functionality to the language. Except for the BIND(C) case, it is nothing but another syntax for functionality that we already have. The only new functionality of the feature is the kind determination of BIND(C), which doesn't appear to be much of an issue in practice since apparently most C compilers use C int for all enums. If a future revision ever does add a strongly typed enum feature, the overlap between that and the current one will contribute to the language seeming bloated and haphazard. I believe this potential negative impact to outweigh the small benefits of the current feature. Adding a strongly typed enum feature now is not reasonable in my opinion. It would have too many potential interactions with other features and would consequently cause substantial delay in the standard. Deletion of this feature has little impact on the rest of the standard. The enum feature is currently nothing other than an alternate syntax for defining a type alias and a set of named constants; no other features depend on whether this or some other syntax for the same thing is used. J3 Response: We recommend that we leave enums in the standard but require the use of the BIND attribute. 2. I propose that an intrinsic to execute a system command be added. The CD adds intrinsics to obtain information about the command used to execute the Fortran program. The ability to in turn execute some other program is the other side of the same coin, often asked about in almost the same breath. Almost all processors have such a facility. It begs for standardization. Yes, the interpretation of the command depends on the processor. Nonetheless, this is a very useful and widely used facility. It is also trivial to add to the standard, being just an additional intrinsic with no special interactions. This functionality is indirectly available via C interop, but I think it merits direct support, just like the intrinsics to obtain command-line information have direct support in the CD. J3 Response: We will suggest that it be added to the list of features for consideration for the next revision of the Fortran standard. References 02-007r3, Fortran 2000 Committee Draft [End of J3 / 02-311r1]