They would be invalid too. I know... no garbage collector, so it would be necessary to find the inbound references. Smart pointers maybe? Yet another performance hit.
On Thursday, February 4, 2016 at 1:54:24 PM UTC-8, Stefan Karpinski wrote: > > How does one "release" an object? What happens to other objects that > retain references to those objects? > > On Thu, Feb 4, 2016 at 4:35 PM, Michael Landis <darksky...@gmail.com > <javascript:>> wrote: > >> if you added a field, the existing objects could still be valid. If you >> killed an attribute, they are invalid and can be released. >> >> On Thursday, February 4, 2016 at 10:55:25 AM UTC-8, Stefan Karpinski >> wrote: >>> >>> What happens to existing objects of a type when you redefine the type? >>> >>> On Thu, Feb 4, 2016 at 1:46 PM, Michael Landis <darksky...@gmail.com> >>> wrote: >>> >>>> I think it would be nice to be able to undefine a type, so restarting >>>> the environment is not required when adding or deleting an attribute from >>>> a >>>> type description. Not being able to update a type definition without >>>> restarting the environment is a royal pain in the ass. >>>> >>>> >>>> On Saturday, March 8, 2014 at 9:55:37 AM UTC-8, Freddy Chua wrote: >>>>> >>>>> Suppose I have a Type >>>>> >>>>> type Foo >>>>> a >>>>> b >>>>> end >>>>> >>>>> f = Foo(1,2) >>>>> f.a = 1 >>>>> f.b = 2 >>>>> >>>>> how do I test whether f.a is defined >>>>> I do this isdefined(f, 1) but isdefined(f, 'a') does not work >>>>> >>>>> another question >>>>> how do i undefine f.a such that isdefined(f,1) now returns false >>>>> >>>> >>> >