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