Hi all
Last week I did these tasks:
Tasks for this week:
Cheers,
Evelyn
Wonderful to have progress on this important topic - thank you!
Sorry I haven't been following closely (maybe you addressed it already), but
pushing up instance variables has a dangerous limitation - instances lose
any data held in that var. I guess it's because it's deleted from the
subclass prior to adding to the superclass to avoid duplicating. One
solution would be to add a var to the superclass with a mangled name, copy
the data for all instances, remove the var from the subclass, and then
rename the mangled var.
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
I never thought of that implication - if ivars are proper objects (is that now applied?) would this issue go away (an ivar would just get a new parent)?
This is a very interesting problem, as its a type of transaction, and I never though of it that way - its easy to think of it as just dumb code - but in effect it isn’t.
Tim
On Fri, 12 Feb 2021, at 4:30 PM, Sean P. DeNigris wrote:
Wonderful to have progress on this important topic - thank you!
Sorry I haven't been following closely (maybe you addressed it already), but
pushing up instance variables has a dangerous limitation - instances lose
any data held in that var. I guess it's because it's deleted from the
subclass prior to adding to the superclass to avoid duplicating. One
solution would be to add a var to the superclass with a mangled name, copy
the data for all instances, remove the var from the subclass, and then
rename the mangled var.
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html
Hi Tim,
you may want to have a look at
Preserving Instance State during Refactorings in Live Environments
https://hal.archives-ouvertes.fr/hal-02541754/document
G
El 13 feb 2021, a las 9:46, Tim Mackinnon tim@testit.works escribió:
I never thought of that implication - if ivars are proper objects (is that now applied?) would this issue go away (an ivar would just get a new parent)?
This is a very interesting problem, as its a type of transaction, and I never though of it that way - its easy to think of it as just dumb code - but in effect it isn’t.
Tim
On Fri, 12 Feb 2021, at 4:30 PM, Sean P. DeNigris wrote:
Wonderful to have progress on this important topic - thank you!
Sorry I haven't been following closely (maybe you addressed it already), but
pushing up instance variables has a dangerous limitation - instances lose
any data held in that var. I guess it's because it's deleted from the
subclass prior to adding to the superclass to avoid duplicating. One
solution would be to add a var to the superclass with a mangled name, copy
the data for all instances, remove the var from the subclass, and then
rename the mangled var.
Sent from: http://forum.world.st/Pharo-Smalltalk-Developers-f1294837.html