On Sat, Jun 4, 2011 at 12:04 PM, Stéphane Ducasse <[email protected]
> wrote:

> why would it make sense to send initialize?
>

Because the system has fucking names.
PackageInfo >> classes
answers both, traits and classes.
I wanted to send #initialize to all classes of a package.
Of course, I did a workaround:

((PackageInfo named: 'XXX') classes select: [:each | each isBehavior ]) do:
[:each | each initialize]

Funny, I reported exactly the same 1 year ago:
http://forum.world.st/Bug-PackageInfo-classes-return-also-Traits-tp2165137p2165137.html
what a bad memory I have


>
> Stef
>
> On Jun 4, 2011, at 11:42 AM, Mariano Martinez Peck wrote:
>
> > 1) Browse the example Trait1  and you will see methods like:
> > Trait1 >> c
> >
> >     ^ 'Trait1>>c'
> >
> > and:
> >
> > Trait1 >> c1
> >
> >     ^ 'Trait1>>c1'
> >
> >
> > 2) Now, execute "Trait1 initialize"
> > 3) BOOM. Trait1 has no longo any method. In the browse they are shown
> like:
> >
> > Trait1 >> c
> >     "This method does not exist."
> >     self halt.
> >
> > Trait2 >> c1
> >     "This method does not exist."
> >     self halt.
> >
> > ....
> >
> > If I see Trait >> initialize
> >     super initialize.
> >     classTrait := ClassTrait for: self
> >
> >
> > and then ClassTrait for:
> >     "This method does not exist."
> >     self halt.
> >
> >
> > wtf ??   that method is removed? this even happens before doing Trait1
> initialize.
> >
> > so...any idea?
> >
> >
> > --
> > Mariano
> > http://marianopeck.wordpress.com
> >
>
>
>


-- 
Mariano
http://marianopeck.wordpress.com

Reply via email to