Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Denis Kudriashov
Hi Guille. ср, 18 сент. 2019 г. в 14:22, Guillermo Polito : > Tools should work against #localMethods and #origin, which hide how the > actual implementation stores the things :). > I am a bit confused by this sentence. My original design of scopes was purely based on #localMethods and #origin

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Alistair Grant
Hi Guille, On Wed, 18 Sep 2019 at 15:22, Guillermo Polito wrote: > > > > El 18 sept 2019, a las 15:05, Alistair Grant escribió: > > > [snip/] > > From what you've written above (and below), the two dictionaries > should always have the same instance of CompiledMethod so it shouldn't > matter

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Guillermo Polito
> El 18 sept 2019, a las 15:05, Alistair Grant escribió: >>> >>> TraitedMetaclass stores methods in two different instance variables: >>> >>> - methodDict (inherited from Behavior) >>> - localMethods >>> >>> And the same method can be different in each dictionary. >> >> Yes, trais actually

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Alistair Grant
Inline below... Cheers, Alistair (on phone) On Wed., 18 Sep. 2019, 15:05 Guillermo Polito, wrote: > About bug1) I’ve found that Calypso query scopes use sometimes #methods > and sometimes #localMethods > > ClyLocalClassScope >> methodsDo: aBlock > > self classesDo: [ :eachClass | >

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Alistair Grant
Hi Guille, Replies inline... On Wed, 18 Sep 2019 at 14:44, Guillermo Polito wrote: > > Hi Alistair, > > we are checking this with Pablo here, some questions inline > > > El 18 sept 2019, a las 11:04, Alistair Grant > > escribió: > > > > Hi Everyone, > > > > TraitedMetaclass stores methods in

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Guillermo Polito
About bug1) I’ve found that Calypso query scopes use sometimes #methods and sometimes #localMethods ClyLocalClassScope >> methodsDo: aBlock self classesDo: [ :eachClass | self metaLevelsOf: eachClass do: [ :concreteMetaLevelClass |

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Guillermo Polito
Hi Alistair, we are checking this with Pablo here, some questions inline > El 18 sept 2019, a las 11:04, Alistair Grant escribió: > > Hi Everyone, > > TraitedMetaclass stores methods in two different instance variables: > > - methodDict (inherited from Behavior) > - localMethods > > And the

Re: [Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Alistair Grant
P.S. Two implications of this: 1. The code you're looking at may not be the code that is executed. If in doubt, use the standard System Browser (not senders, implementers, etc.). 2. Iceberg may not be loading extension methods that override an existing method correctly, so the old version is

[Pharo-dev] TraitedMetaclass / Behaviour bug?

2019-09-18 Thread Alistair Grant
Hi Everyone, TraitedMetaclass stores methods in two different instance variables: - methodDict (inherited from Behavior) - localMethods And the same method can be different in each dictionary. Different browsers show different versions, i.e.: - The System Browser uses the method in