Hi: On 07 Nov 2011, at 23:38, Stéphane Ducasse wrote:
if you look in the scripttloatder you can tell the MC that it should apply a list of package one after the other and not (by default collect all the classes and apply all the change together).
Hm, I currently have only one Monticello package. I don't put subpackages currently into different *mcz, but I guess that is the way to go. Thanks Lukas, but that looks like breaking a fly on the wheel. Don't need that kind of complexity just yet.
Now another smart move is to think (if the license allows it) how you can push the hooks that you need to the community like that you are more customization and less override. License: MIT... But, 50% of the stuff is to specific, I think.
The following would be a candidate for inclusion: ----- !Parser class methodsFor: '*Omni-Compiler-Kernel' stamp: 'StefanMarr 11/3/2011 21:40'! encoderClassFor: aCompiledMethod ^ aCompiledMethod isBlueBookCompiled ifTrue: [EncoderForV3] ifFalse: [EncoderForV3PlusClosures]! ! !CompiledMethod methodsFor: '*Omni-Compiler-Kernel' stamp: 'StefanMarr 11/3/2011 15:55'! methodNode "Return the parse tree that represents self" | aClass source | aClass := self methodClass. source := self getSourceFor: (self selector ifNil: [self defaultSelector]) in: aClass. ^(aClass parserClass new encoderClass: (aClass parserClass encoderClassFor: self); parse: source class: aClass) sourceText: source; yourself! ! ----- But for instance the following and similar changes aren't generally useful, and probably just an artifact of me being too lazy to do it right: !InstanceVariableNode methodsFor: '*Omni-code generation' stamp: 'StefanMarr 11/3/2011 14:20'! emitCodeForValue: stack encoder: encoder stack push: 1. encoder adjustParseStackForPushInstVar: stack. ^encoder genPushInstVar: index! ! !BytecodeEncoder methodsFor: '*Omni-bytecode generation' stamp: 'StefanMarr 11/3/2011 14:20'! adjustParseStackForPushInstVar: parseStack ^ parseStack! ! Best regards Stefan -- Stefan Marr Software Languages Lab Vrije Universiteit Brussel Pleinlaan 2 / B-1050 Brussels / Belgium http://soft.vub.ac.be/~smarr Phone: +32 2 629 2974 Fax: +32 2 629 3525