Monday, June 25, 2007

Slowly understanding MC2 design

This week was my last week of internship. I will now start to work fully on MC2. However, I did find some time to enhance the wiki page. I added a page about the merging algorithm and another one about the base classes with a diagram in each page. I also played a bit with the code and find a way to save and load slices. Have a look at the very bottom of the wiki page.

Tuesday, June 19, 2007

Projects warming up

It looks like our students have started working on their projects for real, after having been busy with finals, defenses etc.

Jerome, even if busy with his finals, has worked on the CSS viewer, named DomView. He worked on the Box Model, and DomView can now display box containers, as shown in the image. During this week, Jerome will work on text styles.

Jerome is documenting his work at

Benjamin is working on a Croquet Controller that logs the messages it receives. He modified one of the built-in controllers to log the messages on the Transcript window, and is now working on a new, custom controller able to store the received messages. During this week he'll try to have his controller replay simple sequences of messages.

Damien has started working on Monticello2, and he wrote a report on his work here.

Oleg will be busy with his finals until today, Tuesday June 19th, and has promised that starting tomorrow he will work hard on his project.

Mathieu has been busy fixing bugs in the BlockClosure decompiler, and will keep working on it during this week. He's also working on integrating the new compiler subsystem with the Refactoring Engine.

Thursday, June 14, 2007

Start coding on Monticello 2

I've finally started working on Monticello 2, as part of the Google Summer of Code 2007.

Reading the source code of MC2, I found it well written and lots of unit-tests are presents. Colin and Avi are really good developers.

While reading, I refactored and cleaned the code. The resulting packages can be downloaded at

I've also updated the wiki page with links to documentation

Playing a bit with the model interfaces, I didn't find a way to load a package previously saved in a file-based repository. It seems the method MDMemo>>getSnapshotFrom: is missing.

It's not clear whether Colin and Avi want to keep their "slicing" model. The "slicing" model is the possibility to store anything to a repository: a method, an instance variable, a class, a package... According to Avi, it seems it was a good idea, but it complicates things a lot. We will have to discuss about that particular problem.

What I plan to do in the following days is to continue reading and enhancing the source code, and find a way to load a slice from a repository.

Friday, June 8, 2007

Status Report

Hi all,

here's a quick report on the status of the five Summer of Code projects.:

- Oleg, Mathieu, Damien and Jerome have been busy with university work, so they couldn't do much work on their SoC projects.

- Benjamin spent the first SoC week exploring the Croquet system and reading its documentation. His plan for this week was to build a simple Controller that can log external Croquet messages sent to it, for later replay.

[My apologies if this message was posted so late, but my laptop died - yet again!]