(j3.2006) Still illegal in F08?

Aleksandar Donev adonev
Wed Jan 6 10:42:30 EST 2010


Malcolm Cohen wrote:
> These restrictions are static compile-time restrictions.  We could lift 
> them all and let the runtime sort it out, but that would hardly be a 
> service to our users (both vendors and end-users).
OK, Malcolm's explanation of our "intention" now makes sense to me so I 
am in agreement with him that it makes sense. Although I am less sure 
about this one:
>  From what I have seen so far, the functionality you are reaching for is 
> already well-provided-for by allocatable arrays and IF constructs.
Something like:

IF(PRESENT(A)) THEN
    BLOCK
      REAL :: X(SIZE(A))
    END BLOCK
END IF

seems to me to make perfect sense and be much nicer (and even more 
efficient) than allocatable arrays. But to turn into compile-time 
checkable we need to invent a new "SELECT PRESENT" or some such 
construct, which is indeed a new feature. Since we have a reasonable 
basis for what is there now we should keep things as they are for now.

Best,
Aleks



More information about the J3 mailing list