Array Descriptor Update

Daniel Kraft d@domob.eu
Fri Sep 26 12:48:00 GMT 2008


Paul Thomas wrote:
>> I can't answer your original question, but I believe this information 
>> is not really "needed" as the type is compile time known and gfortran 
>> can insert the appropriate handling for the type at compile time; I 
>> guess that's why we don't need it...  But with your proposal for 
>> polymorphic entities, we would want to carry a runtime type.  I guess 
>> we could probably drop the static type information (for CLASS(t) it 
>> would be "t") and replace it by the dynamic one (the runtime type).
> At present, the DTYPE field is only long enough to allow for the 
> intrinsic types.  Also, I suspect, it is assiduously written and copied 
> but then not used .... that was my question.

Another thought:  In preparation for parametrized derived types, do we 
need to store kind/length type parameters together with the runtime type 
token?  Does to "instances" of a derived type with different parameters 
belong to the same class?

If so, don't we probably need more than a  size_t type key for full 
runtime type information?

BTW, I sometimes get the impression Fortran 2003 was inspired (at least 
in some aspects) by Ada 95; the notion of "classes" is similar (unlike a 
"class" in C++ or Java) as well as the concept of "parametrized derived 
types" (those are  types with discriminant in Ada).  We might try to 
find something out about how the GNAT folks did things like that?

Yours,
Daniel

PS: What do you think about an IRC meeting if this topic keeps hot?

-- 
Done:  Arc-Bar-Cav-Rog-Sam-Val-Wiz
To go: Hea-Kni-Mon-Pri-Ran-Tou



More information about the Fortran mailing list