On Mar 17, 2010, at 11:23 15AM, Igor Stasenko wrote:
How does the package know when a class is deleted from within a #doSilently: block?
this is irrelevant. Because if you build a system from a first principles, where a package is one of the key concepts in it, instead of a hollow abstraction, sure thing you taking care about all of it in proper manner.
RPackage is about a PackageInfo replacement, not about a namespace implementation. Arguably namespacing is something entirely different.
As i said, it doesn't implements a new model, but a different view on existing one.
RPackage does not implement a different view: PackageInfo is implicit, it takes all information from elsewhere (category and protocol names).
'Elsewhere' is a key word here, which means that PackageInfo is a view, and nothing more.
Yes, you are talking about two entirely different kinds of Package. RPackage is, like PackageInfo, just a view of the underlying system, but maintaining a cache of the essential data instead of recomputing at every message send. Cheers, Henry