DeltaStreams and MC2

Matthew Fulmer tapplek at gmail.com
Wed Oct 3 20:21:43 UTC 2007


On Wed, Oct 03, 2007 at 02:51:18PM +0200, stephane ducasse wrote:
> goran just a question
> could MC2 be based on DeltaStreams in terms of how to load/save  
> packages?

It could, but I don't think it would really be a good idea. A
delta is both an old and new version combined into one object,
providing stand-alone applying, reverting, and validation,
without dependence on historical analysis. A Monticello snapshot
(in both Monticello 1 and 2) is just the new version, and uses
historical analysis for loading, validation, merging, and, to
some extent, reverting. 

A monticello package is tied to it's historical information,
allows it to provide excellent merging and collaboration
facilities, but does not really allow patches to be applied to
disparate code chunks in disparate images, especially where the
historical information may not exist.

Deltas, on the other hand, are stand-alone entities providing a
patch, a path from an old state to a new state, but nothing
else. Thus, they are not very collaborative, but they do allow
applying, reverting, and differencing between systems and system
states without needing additional infrastructure.

A good analogy is that Monticello is to code packages what .sources
is to the image. Similarly, deltas are to code packages what
.changes is to the image.

Hope that helps

-- 
Matthew Fulmer -- http://mtfulmer.wordpress.com/
Help improve Squeak Documentation: http://wiki.squeak.org/squeak/808



More information about the Squeak-dev mailing list