for 1.1
Gofer new
squeaksource: 'NanoTraits';
package: 'NanoTraits-Kernel';
package: 'NanoTraits-Tests';
load
NanoTrait install
I got a DNU ClassDescription traitImpl is not know.
ClassDescription>>traitImpl
^NanoTrait
uses: aTraitComposition
| newTraits |
newTraits := ((aTraitComposition isKindOf: NanoTrait) or: [
aTraitComposition isKindOf: NanoTraitTransformation])
aTraitComposition isKindOf: NanoTrait orOf: NanoTraitTransformation
does not exist anymore in pharo :) luckily!
Behavior class>>installTraitsFrom: aTraitComposition
...
self traitComposition removeTraitUser: self.
-> DNU removeTraitUser:
Some comments I got just reading the code and eating.
Difficult to write in mails because this is more like metathoughts about the
overall design space
(not only NT) but kernel, Btrait and NTraits.
- I tried to understand what is the benefit to have NTdescription and
NClassTrait subclass of
ClassDescription.
I think that this is a pity that the interface of the existing kernel
and BTrait could not
Now what I would really like to see is the impact on the tools (I
imagine that andreas design
is better for that and I would like to understand what are the
underlying invariant of the tools
that Btraits broke. I imagine that Btrait interface is not that far
from NTrait now the point is probably
that the fact that NT inherits some not necessary behavior from
ClassDescription fulfills better
the tool invariant.
- I have the impression that the design of adrian was less backwards
and more here is a "new" kernel
and tools were shaken.
- something that I would like to see fixed in traits is the problem
with the superclass
Igor once you remove the non traits related classes:
Trait-Requires
Trait-LocalSends
Traits-Kernel => 5 classes
Traits-Composition => 7 (and I imagine that we could do a pass to
clean method)
so all in all we may have 15 classes in total (exception included).
Issue 1706: Clean Traits implementation
http://code.google.com/p/pharo/issues/detail?id=1706
Back latexing pffffff :(
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project