To: J3 J3/23-154 From: Budiardja & Clune & Cohen & Long & Bleikamp Subject: Initial Recommendations for F202Y Features Date: 2023-May-28 Reference: 23-141, 23-146, 23-147, 23-148 Introduction ------------- At its February 2023 meeting (meeting #229), J3 (formally, INCITS/Fortran) collected lists of potential features to recommend to WG5 for inclusion in Fortran 202Y from its subgroups (Data, HPC, JoR, and Generics). J3 called straw votes on the items in the lists. Collected below are items that received positive responses (i.e. more "yes" than "no" and more "yes" than "undecided") from the straw votes. They are listed in no particular order. One sentence descriptions are provided for convenience where needed. Reader should consult the cited references for more context. Data ----------------------------- 1. Namespace for modules Provide a "remote access" to access module entities, for e.g. "modulename % entityname" (syntax here for illustrative purposes only). 2. More assumed-rank functionality Make assumed-rank more useful inside Fortran. 3. Obsolete default implicit typing 4. Pointer intent (read-only pointer) 5. "Proper" enumeration types Provide additional functionality for our existing enumeration types. 6. Program-specified default KINDs for constants and intrinsic HPC ------------------------------ 1. BITS data Add an intrinsic type BITS to Fortran. 2. BIND (Fortran, name= ) Provide a way to specify the binding name for a Fortran program unit. 3. Additional types to list of interoperable types See 22-185r1 for potential types. 4. Async tasking Provide a mechanism to do asynchronous tasking in Fortran. See 22-169.pdf. JoR ------------------------- 1. FPP - a preprocessor for Fortran 2. F.P. model Add note to the standard that this model is not the model any particular hardware uses, and for floating point, is not the same as IEEE 754. 3. Scan/prefix sum See 23-113 4. IEEE math intrinsic operations See 23-111r1 5. Deprecate D edit Descriptor 6. Source position Provide a way to retrieve the current position in a source file as printable text or a value. 7. TABs in source code Treat TAB as space in source input. See 23-117. Generics ------------------------- 1. Generic programming See 22-154r5, 22-120r5, 22-102 and references therein. 2. Additional generics features See 23-148.