We used lazzy initialization because this is needed.
When you have a lot of empty collection that are only used when they
are used then it does not make sense to
allocate them up front especially for FAMIX2Method objects.
Stef
Hm.
Not sure which way it was in VW. My tendency is to throw away lazy
initialization unless someone can prove that it is needed.
I prefer to always see a comment explaining *why* lazy initialization
is right.
Cheers,
- on
On Sep 4, 2008, at 14:27, Stéphane Ducasse wrote:
So can somebody smart explain to me the
following
before in Squeak incomingInvocations was
incomingInvocations
incomingInvocations isNil ifTrue: [ incomingInvocations :=
OrderedCollection new ].
in oscar changes it is
incomingInvocations
<MSEProperty: #incomingInvocations type: #FAMIXInvocation opposite:
#candidates> <mulivalued> <derived>
^ incomingInvocations values
So what should I do.
Because now I do not know! But I'm certainly stupid for sure.
What I know is that this metastuff gets in our way.
I do not care about reproducing complete code (which we cannot in
FAME
because lazy initialization and other useful code level
idioms are not represented) and now instead of focusing on Moose I
have to deal with meta representation concerns.
Really I think that we got trapped there.
Knowing where to stop is as important as doing it. Next time I will
fight really hard against any smart cleaner cooler meta meta stuff.
Which is sad because I know what I'm talking about.
Stef
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev
_______________________________________________
Moose-dev mailing list
Moose-dev(a)iam.unibe.ch
https://www.iam.unibe.ch/mailman/listinfo/moose-dev