View · Search · Index
No registered users in community xowiki
in last 10 minutes

Re: [Xotcl] "tie" command

From: Kristoffer Lawson <setok_at_fishpool.com>
Date: Fri, 24 Jan 2003 16:16:46 +0200 (EET)

On Fri, 24 Jan 2003, Gustaf Neumann wrote:

> we could provide an option -bind <varname> to the new instproc to allow
> the user to specify a local or a per-object or global variable name,
> but
> this does not provide reference counting at all. i have started some
> time ago
> to work on reference counting, and xotcl has some good prerequirements
> for this: we have tcl_objs for xotcl objects, they maintain already a reference
> count. the obvious idea is to destroy the object, when the reference count
> reaches 0. however, practically this showed to be quite tricky in the current
> implementation since the refcount = 0 condition happens in some unvonveniant
> situations... i have not given up on this, but it needs a bigger chunk of time to
> devote to this...

Yes, exactly. Obviously it's all just steps to make some things easier
while refcount based destruction is the absolute solution. However,
as you may have noticed from c.l.t, ref-count -based systems are really
nasty to get done properly. How would you propose to deal with the
situation where a reference is lost, because the object just happens to
be made into a string (ie. some command or procedure does not keep the
Tcl_Obj but just uses the data as a command). F.ex. when building
callback scripts and containing the object handle there, or as an array
key (I think array keys are still just considered to be strings and the
Tcl_Obj form is not retained).

I would absolutely love to see a solution to the above problems. Many
issues would just vanish in an instance.

                              / http://www.fishpool.com/~setok/