For traits, requirements were programmatically inferred instead of
using #explicitRequirement.
In the original traits implementation, inference of requirements was
necessarily incomplete. For example, if a method says
self add: x
or
self class new: n
we would infer a requirement of add: n the instance side and new: on
the class side. However, if the method said
self copyEmpty add: x
we would not infer a requirement of add:
In these cases we included a method definition
add: anObject
self explicitRequirement
to tell the tools that add: was a required method. We used this very
rarely, since most of the time the inference of required methods
worked very well.
Andrew
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project