[ENH][Modules] Delta Modules [was: Another version]

Andrew P. Black black at iam.unibe.ch
Wed Oct 3 22:57:20 UTC 2001


Dear Henrik,

It is good that you are improving the presentation on the Wiki, 
because that is a better place to find answers that the mail archive. 
(But it does take so much longer to edit the Wiki ... lucky I have 
cable Internet in my flat)

Your changes do clarify the meaning of what is there quite a bit, so 
thank you for that.  But they do not answer my questions, only 
confirm that I do really still have those questions.  So, let me try 
rephrasing my questions so it is clearer what I am asking.

Question the first:

I understand that "DeltaModules can be un/installed, but the 
un/install operation has no meaning for regular Modules" [1].  My 
question is: Why.  If un/install is such a good idea, why not have it 
for all Modules, not just for DeltaModules?

Question the second:

DeltaModules are a kind of Module[2].  They are distinguished from 
base modules by being defined by difference.  So, for example, 
StringWithUrlOps might be defined as being the same as String_V1.2 
with the addition of a specific set of Url manipulation methods.  But 
the DeltaModule does not do this as a set of changes, but rather as a 
definition of the final state.  Right so far?
So, my question is: why do you consider DelatModules as being 
conceptually different from Modules at all?  Why do they have 
different properties, just because they happen to have a different 
representation?  After all, v2.3 of a text document is still a text 
document, regardless of whether it is defined by deltas from version 
v2.2 or by giving the full text.  In OO terms, the representation 
(whether by delta or by absolute) is hidden, only the protocol is 
important.  Why do DeltaModules and Module not have identical 
protocols?  Why are DeltaModules and regular Modules not just tow 
implementation classes with the same interface?

References:

[1] http://minnow.cc.gatech.edu/squeak/2071

[2] http://minnow.cc.gatech.edu/squeak/2063

>Andrew P. Black wrote:
>
>>  I was reading about the concept of "Delta Modules" on the
>  > Swiki (at http://minnow.cc.gatech.edu/squeak/2063).
>...
>
>>  Finally, what is the motivation for introducing DeltaModules in the
>>  first place?
>
>Andrew,
>
>To try to answer these questions, I fleshed out that page, this should
>hopefully be useful to you.
>
>http://minnow.cc.gatech.edu/squeak/2063
>
>>  If these advantages make the separation of loading from activation
>>  and unloading from deactivation worthwhile, then shouldn't we make
>>  the same separation for Modules themselves, not just for DeltaModules.
>
>I added a new page for this.
>
>"What about conflicts between modules?"
>
>http://minnow.cc.gatech.edu/squeak/2071

I don't see what conflict resolution has to do with my question at 
all.  But maybe you thought that I was asking a different question; 
sorry for being unclear.

I don't understand your page about conflicts either, but I made a 
comment on the page.

	Andrew





More information about the Squeak-dev mailing list