To: J3 J3/23-146 From: Bill Long Subject: F202Y features Date: 2023-February-23 HPC proposed features for F202Y ------------------------------- 1) BITS data - Adds an intrinsic type BITS to Fortran with a KIND-type parameter indicating the number of bits in the data item. Was included in the later (but not final) 007 files Fortran 2008, so much of the design work is done. Would require some integration as some features were added separately. 2) Simple templates. Reuse a lot of existing language features, extended. Add a new Prefix, "template" to a subroutine or Function, to create a template proc. Allow template procs to have dummy arguments that are assumed-type, assumed-rank, and assumed-kind (new). Require that template procs be defined in a MODULE or as a internal subprogram (lets the compiler find them). Instantiation happens a call/reference sites. Error messages if an operation is attempted that is not supported for the actual type. Reuse some of the C++ template technology (name mangling, for example). 3) Double operators Support A+-B that include two consecutive operators. For the pattern operand1 op1 op2 operand2 where op2 is a unary operator for operand 2 and the expression value is operand1 op1 (op2 operand2). 4) BIND (Fortran, name= ) Provides a way to specify the binding name for a Fortran program unit. Maybe just BIND(name= ). 5) BIND (C++ ....) 6) Support X++ (++X, X-- --X) 7) Add float128, float32, float64 to list of interperable types (22-185r1). 8) Async tasking (Jeff, 22-169.pdf)