> On 16 Jan 2016, at 13:26, Nicolai Hess <[email protected]> wrote:
>
>
>
> 2016-01-16 10:11 GMT+01:00 Marcus Denker <[email protected]
> <mailto:[email protected]>>:
>
>>> anyone an idea?
>>>
>> I'm trying to think.
>> Looks like it would be good to be able to make a distinction between symbols
>> and selectors (selectors installed
>> in method dictionaries)
>>
>
> yes, this would improve code completion a bit, too, as there are more symbols
> than symbols that are actually names
> of methods.
>
> The data could be created per environment (Smalltalk globals) the first time
> and then cached till shutdown.
> (it would be an array of size 46451, pointing to existing symbols).
>
> The environment could cache sent selectors, too… pablo did an experiment with
> that.
>
> Marcus
>
>
> How about a new SymbolTable "SelectorTable" that gets new entries on every
> method compilation ?
maybe better when a method is added to a Method Dictionary? This way even
adding things the strange
way would work...
>
> I hacked a simple experimental version.
> But I don't yet understand the workflow for initialisation of the Symbol
> class (with rehash, interned, and compacting).
>
If we hook into adding methods, then compactSymbolTable and rehash could just
reset the SelectorTable and fill it after by going over all methods…
Marcus