|Subject:||Re: [Gm2] equality, inequality tests and structured types|
|Date:||Tue, 27 Jan 2009 16:18:25 +0100|
|User-agent:||Thunderbird 18.104.22.168 (Macintosh/20081209)|
Thanks for your efforts in looking up those points in the ISO documentation.
Breeden, Thomas (tmb) wrote:
I spent some time this weekend pouring over the ISO document trying to determine if I could really allow a statement like this in a client module importing an Opaque.Sorry, I am of the opinion that there is no need to relax any of these restrictions. AFAIK it would cause a lot of havoc and little would really be gained. The only drawback I see from these constraints are constructs like this one (as an illustrative example from RAMSES):
nonexistent: Curve; (* read only! *)
It would be preferable to have a real constant declaration for such a read only variable.
On more general terms, what I recommend to any implementer though, is to make sure that casting of the kind in the implementation of above code exerpt
nonexistent := Curve(NIL);
or in ISO
nonexistent := CAST(Curve, NIL);
will work correctly. This would allow for statements such as
IF myCurve <> nonexistent THEN
in clients code using these facilities and many more constructs actually being crucial for writing useful code (as I described in my previous E-mail). Hope you can agree to these arguments?
regards, Tom _______________________________________________ gm2 mailing list address@hidden http://lists.nongnu.org/mailman/listinfo/gm2
________________________________________________________________________ ETH Zurich Prof. Dr. Andreas Fischlin Systems Ecology - Institute of Integrative Biology CHN E 21.1 Universitaetstrasse 16 8092 Zurich SWITZERLAND address@hidden www.sysecol.ethz.ch +41 44 633-6090 phone +41 44 633-1136 fax Make it as simple as possible, but distrust it! ________________________________________________________________________
|[Prev in Thread]||Current Thread||[Next in Thread]|