Specification

0 views
Skip to first unread message

jpraher

unread,
Jun 23, 2009, 3:23:25 AM6/23/09
to Monticello Development
Dear all,

I am very interested in the way Monticello works, yet am not an
experienced Smalltalker. Could you point me towards a kind of
specification to see how a Smalltalk class/method is stored in for
instance Subversion.

thanks in advance
Jakob

Colin Putney

unread,
Jun 28, 2009, 2:38:43 AM6/28/09
to montice...@googlegroups.com

On 23-Jun-09, at 12:23 AM, jpraher wrote:

> I am very interested in the way Monticello works, yet am not an
> experienced Smalltalker. Could you point me towards a kind of
> specification to see how a Smalltalk class/method is stored in for
> instance Subversion.

Hi Jakob,

This is actually a difficult question to answer. Smalltalk source code
is not like that of other languages. The source code to a Smalltalk
program is actually a set of objects in the image, not text in a file.
Because of this, it can't be stored directly in a file-based
versioning system like Subversion. It's possible, of course, to
translate the objects into files, and it's been done a bunch of
different ways, so there's no definitive way to do it.

Monticello 1.x stores its data in specially-organized zip files. One
member of the zip contains a serialization of the source code, and
another contains the complete version history of the code.

In Monticello 2.x we've moved to a more database-style storage format,
with both the source code and version history stored as objects in a
binary file.

Does this answer your question?

Colin

Reply all
Reply to author
Forward
0 new messages