comp.lang.ada
 help / color / mirror / Atom feed
From: Florian Weimer <fw@deneb.enyo.de>
Subject: Re: A hole in Ada type safety
Date: Sun, 08 May 2011 10:46:05 +0200
Date: 2011-05-08T10:46:05+02:00	[thread overview]
Message-ID: <87oc3dtwaa.fsf@mid.deneb.enyo.de> (raw)
In-Reply-To: 1mwaabp60tuqi$.1cbqxk0do4ic$.dlg@40tude.net

* Dmitry A. Kazakov:

> I mean a schema which could be usable for Ada. I see many problems, apart
> from tasking. If you want to refer components, you need to add the parent's
> count to the component's count in order to prevent its zeroing.

The component wouldn't have its own count.  A reference to a component
would consist of a pointer to the component, combined with a pointer
to the reference counters for the outmost object.

> When you create a reference you have to check if the counts already
> exist somewhere.  Since nothing is allocated in the object, where
> get that information from?

You would only be able to create a reference from prefixes which
contain references at certain points.  For everything else, you'd have
to use access values, as before.

> IMO weak references are quite useless if do not support notifications (when
> the last strong reference is removed). I.e. you need a list of weak
> reference holders.

I think they are supposed to be used for parent pointers in trees, for
instance, to avoid the cycle issue.  Not so much for finalization.



  reply	other threads:[~2011-05-08  8:46 UTC|newest]

Thread overview: 31+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-04-30  8:41 A hole in Ada type safety Florian Weimer
2011-04-30 11:56 ` Robert A Duff
2011-04-30 15:27   ` Gavino
2011-04-30 16:16   ` Florian Weimer
2011-04-30 23:39     ` Randy Brukardt
2011-05-01 10:26       ` Florian Weimer
2011-05-03  1:40         ` Randy Brukardt
2011-05-03 16:57           ` Robert A Duff
2011-05-07  9:09           ` Florian Weimer
2011-05-07  9:28             ` Dmitry A. Kazakov
2011-05-07  9:57               ` Florian Weimer
2011-05-08  8:08                 ` Dmitry A. Kazakov
2011-05-08  8:46                   ` Florian Weimer [this message]
2011-05-08  9:32                     ` Dmitry A. Kazakov
2011-05-08 10:30                       ` Florian Weimer
2011-05-08 20:24                         ` anon
2011-05-08 21:11                           ` Simon Wright
2011-05-10  6:27                             ` anon
2011-05-10 14:39                               ` Adam Beneschan
2011-05-11 20:39                                 ` anon
2011-05-12  0:51                                   ` Randy Brukardt
2011-05-13  0:47                                     ` anon
2011-05-13  0:58                                       ` Adam Beneschan
2011-05-13  5:31                                       ` AdaMagica
2011-05-12  5:51                                   ` AdaMagica
2011-05-12 12:09                                     ` Robert A Duff
2011-05-12 14:40                                     ` Adam Beneschan
2011-05-14  0:30                                       ` Randy Brukardt
2011-05-09  7:48                         ` Dmitry A. Kazakov
2011-05-09 20:41             ` Randy Brukardt
2011-05-14 23:47     ` anon
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox