So, this was unexpected behaviour? Certainly the way that Bert describes appears to be what happened in my workspace-based tests.
Am 03.07.2008 um 05:27 schrieb Randal L. Schwartz:
"Marcin" == Marcin Tustin <mm3@zepler.net> writes:
Marcin> I recently came across a piece of behaviour which is (sort of)
Marcin> understandable, but I wonder if it is how it is supposed to happen or
Marcin> not. I was running through the potsdam seaside tutorial, and I change
Marcin> the superclass of one of the objects from Object to WAComponent, and
Marcin> accepted the change. All the browser tools treated the class as if its
Marcin> protocol included the messages of WAComponent, but running code that
Marcin> sent WAComponent messages signaled MessageNotUnderstood.
Are you sure you weren't dealing with a previous instance of your old class?
I think this kind of a change forks the class def so that new instances have
the new superclass, but old instances still have the old class and old
superclass (anObsoleteYourClassnameHere).
I could be wrong, but tI think that's how it works.
Smalltalk does not work that way. If the class format changed, all existing instance are bulk-migrated to the new class (by creating new instances and doing a forward-become on all of them).
- Bert -
_______________________________________________
Beginners mailing list
Beginners@lists.squeakfoundation.org
http://lists.squeakfoundation.org/mailman/listinfo/beginners