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]