On 04/10/2013 08:57 AM, Tudor Girba
wrote:
Hi,
Glad to see we have the same definition of traits.
Yet I will object on your assumptions: I am talking metamodeling,
you are talking programming.
Long time ago, there was a warning on not using inheritance for
reuse but for subtyping (and it even came out of Smalltalk that used
to "cancel" some of the inherited methods of a class).
I want to talk about multiple INHERITANCE because I want to talk
about subtyping.
Metamodelling is abstract, a description of a "domain".
I want to be careful to describe things "the right way", meaning not
for implementation, but for understanding.
Because I believe that only by keeping as close as possible to the
domain (the concepts in our heads) we will have a proper
implementation.
Basically we have the same idea of 1-to-1 mapping (see your answer
further down), but you are thinking of pharo as the programming
language and I was trying to think of Famix as the implementation
language ...
Everybody uses code generation everyday because compiling is just
generating to byte code.
So the question might be whether we can do without "[manipulating]
anything at the lower level", or else to find a way to manipulate
directly Famix entities in Pharo.
nicolas
--
Nicolas Anquetil -- RMod research team (Inria)