Traits question

Adrian Lienhard adi at netstyle.ch
Sat Dec 15 21:29:38 UTC 2007


Hi Sophie,

On Dec 15, 2007, at 19:05 , itsme213 wrote:

> How are Traits and Monticello supposed to work together?
> e.g. With Monticello I (expect to) add methods to others' classes,  
> while
> managing and versioning these methods in my package.
>
> Object>>myMethod1
> Object>>myMethod2
>
> If I have #myMethod1/2 in a trait, can I apply them to the Object  
> class and
> still have them Monticello-managed correctly in my package?

Monticello supports class extensions only for methods. Unfortunately  
it is not possible to extend classes with Traits, like it is not  
possible to extend a class with additional instance variables.

A workaround, although often not a very good one, is to move the class  
into your package. However, I would rather leave the class where it is  
and also publish the original package of the class. This mostly works  
well since MC is good at merging (for instance, for each Seaside  
project, I have private versions of the Seaside package for changes  
and then I merge them with new versions when updating).

HTH,
Adrian

___________________
Adrian Lienhard
http://www.adrian-lienhard.ch/



More information about the Squeak-dev mailing list