Dynamic protocol performance

Zulq Alam me at zulq.net
Thu Feb 7 09:32:57 UTC 2008


Damien Cassou wrote:

> - messages you send but for which there is no implementation (even if
> you do not implement a #subclassResponsibility)

Ahh.. OK, thanks. So these are implicitly required. Mostly I would be 
interested in the explicit case and rarely in the implicit case.

I think it would be better to make two protocols, "explicitly required" 
and "implicitly required" (maybe with better names). What do you think?

The performance of the implicit protocol wont be proportional to the 
number of selectors and will be bad so it could specify a pain threshold 
of 0. Therefore, it's calculation would always be deferred.

> I think RequiredSelectors does its job well (the algorithm is complex
> and is the subject of an scientific article). We probably have to use
> it in some way. Maybe we just have to set up an interest on this
> class, I don't know.

Declaring interest wont help with initial access. Here the only options 
you have are to (a) optimize #requiredSelectors, (b) never do it, (c) do 
it asynchronously, (d) do it only when you really must. I have gone for 
option (d) for simplicity. I may have a look at (a) when I get some time.

Thanks,
Zulq.




More information about the Squeak-dev mailing list