From: "Dmitry A. Kazakov" <mailbox@dmitry-kazakov.de>
Subject: Re: Rational for not making cursor tagged in Containers
Date: Tue, 24 Apr 2007 14:21:51 +0200
Date: 2007-04-24T14:21:51+02:00 [thread overview]
Message-ID: <1oqvcxl6fs48n.1wwdhh2t8o9vf$.dlg@40tude.net> (raw)
In-Reply-To: 1177405128.6354.6.camel@localhost
On Tue, 24 Apr 2007 10:58:48 +0200, Georg Bauhaus wrote:
> On Sun, 2007-04-22 at 10:38 +0200, Dmitry A. Kazakov wrote:
>
>> 'Class is a difficult case. And a general question regarding it is, should
>> it be possible to have it "hyper-dispatching"? [sorry, for inventing new
>> terms on the fly]? I mean T'Class'Class.
>
> I'm dense, is there any difference between T'Class and T'Class'Class?
If you were allowed to derive from any type to get at the class of, then
you could do:
type Object is ...;
procedure Foo (X : Object'Class);
-- Does not dispatch on Object'Class
type Meta_Object is new Object'Class with ...;
procedure Bar (X : Meta_Object);
-- Dispatches on Meta_Object
I cannot think of any useful example for this. Perhaps:
type Node;
type Node_Ptr is access Node;
type Node is new Object'Class with record
Previous : Node_Ptr;
Next : Node_Ptr;
end record;
Which is essentially:
type Node (T : Tag) is record
Previous : Node_Ptr;
Next : Node_Ptr;
Value : Object'Class (T);
end record;
--
Regards,
Dmitry A. Kazakov
http://www.dmitry-kazakov.de
next prev parent reply other threads:[~2007-04-24 12:21 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-04-19 16:05 Rational for not making cursor tagged in Containers Anh Vo
2007-04-19 18:25 ` Robert A Duff
2007-04-19 19:28 ` Anh Vo
2007-04-19 20:45 ` Robert A Duff
2007-04-19 21:43 ` Dmitry A. Kazakov
2007-04-19 23:59 ` Ray Blaak
2007-04-20 7:54 ` Dmitry A. Kazakov
2007-04-20 10:56 ` Georg Bauhaus
2007-04-20 10:39 ` Dmitry A. Kazakov
2007-04-20 14:42 ` Georg Bauhaus
2007-04-20 14:45 ` Georg Bauhaus
2007-04-20 15:13 ` Dmitry A. Kazakov
2007-04-20 19:37 ` Georg Bauhaus
2007-04-20 19:32 ` Dmitry A. Kazakov
2007-04-20 20:59 ` Robert A Duff
2007-04-20 22:14 ` Dmitry A. Kazakov
2007-04-23 17:38 ` Adam Beneschan
2007-04-23 19:18 ` Dmitry A. Kazakov
2007-04-24 0:15 ` Adam Beneschan
2007-04-24 10:43 ` Dmitry A. Kazakov
2007-04-24 16:27 ` Adam Beneschan
2007-04-24 20:19 ` Dmitry A. Kazakov
2007-04-26 0:58 ` Adam Beneschan
2007-04-26 7:50 ` Dmitry A. Kazakov
2007-04-26 8:09 ` Markus E Leypold
2007-04-27 8:46 ` Dmitry A. Kazakov
2007-04-27 11:37 ` Markus E Leypold
2007-04-28 17:35 ` Dmitry A. Kazakov
2007-04-29 2:31 ` Randy Brukardt
2007-04-29 8:45 ` Dmitry A. Kazakov
2007-04-27 20:44 ` Robert A Duff
2007-04-26 8:33 ` Markus E Leypold
2007-04-26 11:09 ` Markus E Leypold
2007-04-20 19:55 ` Randy Brukardt
2007-04-22 9:54 ` Georg Bauhaus
2007-04-22 11:19 ` Dmitry A. Kazakov
2007-04-20 20:44 ` Robert A Duff
2007-04-21 5:38 ` Randy Brukardt
2007-04-22 1:14 ` Robert A Duff
2007-04-22 4:08 ` Randy Brukardt
2007-04-20 20:11 ` Randy Brukardt
2007-04-20 21:28 ` Dmitry A. Kazakov
2007-04-21 5:33 ` Randy Brukardt
2007-04-21 9:39 ` Dmitry A. Kazakov
2007-04-22 4:28 ` Randy Brukardt
2007-04-22 8:38 ` Dmitry A. Kazakov
2007-04-23 23:26 ` Randy Brukardt
2007-04-24 10:43 ` Dmitry A. Kazakov
2007-04-24 8:58 ` Georg Bauhaus
2007-04-24 12:21 ` Dmitry A. Kazakov [this message]
2007-04-21 4:48 ` unifying arrays and records (was Re: Rational for not making cursor tagged in Containers) Ray Blaak
2007-04-20 17:05 ` Rational for not making cursor tagged in Containers Ray Blaak
2007-04-20 18:46 ` Dmitry A. Kazakov
2007-04-20 18:52 ` Ray Blaak
2007-04-20 19:54 ` Robert A Duff
2007-04-20 1:18 ` Anh Vo
2007-04-20 7:53 ` Dmitry A. Kazakov
2007-04-20 9:26 ` Maciej Sobczak
2007-04-20 10:15 ` Dmitry A. Kazakov
2007-04-20 11:59 ` Jean-Pierre Rosen
2007-04-20 13:23 ` Anh Vo
2007-04-20 16:02 ` Jean-Pierre Rosen
2007-04-21 2:53 ` Anh Vo
2007-04-20 3:03 ` Randy Brukardt
2007-04-20 2:53 ` Randy Brukardt
2007-04-20 16:08 ` Anh Vo
replies disabled
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox