The Trunk: Kernel-cmm.760.mcz

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
6 messages Options
Reply | Threaded
Open this post in threaded view
|

The Trunk: Kernel-cmm.760.mcz

commits-2
Chris Muller uploaded a new version of Kernel to project The Trunk:
http://source.squeak.org/trunk/Kernel-cmm.760.mcz

==================== Summary ====================

Name: Kernel-cmm.760
Author: cmm
Time: 26 May 2013, 11:25:19.426 am
UUID: 523782ae-3096-40ec-8031-77432a691908
Ancestors: Kernel-fbs.759

- Move #isKindOf: to ProtoObject to allow the PointerFinder to work with Proxies.

=============== Diff against Kernel-fbs.759 ===============

Item was removed:
- ----- Method: Object>>isKindOf: (in category 'class membership') -----
- isKindOf: aClass
- "Answer whether the class, aClass, is a superclass or class of the receiver."
-
- self class == aClass
- ifTrue: [^true]
- ifFalse: [^self class inheritsFrom: aClass]!

Item was added:
+ ----- Method: ProtoObject>>isKindOf: (in category 'testing') -----
+ isKindOf: aClass
+ "Answer whether the class, aClass, is a superclass or class of the receiver."
+ ^ self class == aClass or: [ self class inheritsFrom: aClass ]!


Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Kernel-cmm.760.mcz

Levente Uzonyi-2
On Sun, 26 May 2013, [hidden email] wrote:

> Chris Muller uploaded a new version of Kernel to project The Trunk:
> http://source.squeak.org/trunk/Kernel-cmm.760.mcz
>
> ==================== Summary ====================
>
> Name: Kernel-cmm.760
> Author: cmm
> Time: 26 May 2013, 11:25:19.426 am
> UUID: 523782ae-3096-40ec-8031-77432a691908
> Ancestors: Kernel-fbs.759
>
> - Move #isKindOf: to ProtoObject to allow the PointerFinder to work with Proxies.

Proxies shouldn't be implemented by subclassing ProtoObject.


Levente

>
> =============== Diff against Kernel-fbs.759 ===============
>
> Item was removed:
> - ----- Method: Object>>isKindOf: (in category 'class membership') -----
> - isKindOf: aClass
> - "Answer whether the class, aClass, is a superclass or class of the receiver."
> -
> - self class == aClass
> - ifTrue: [^true]
> - ifFalse: [^self class inheritsFrom: aClass]!
>
> Item was added:
> + ----- Method: ProtoObject>>isKindOf: (in category 'testing') -----
> + isKindOf: aClass
> + "Answer whether the class, aClass, is a superclass or class of the receiver."
> + ^ self class == aClass or: [ self class inheritsFrom: aClass ]!
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Kernel-cmm.760.mcz

Chris Muller-3
Why?

On Sun, May 26, 2013 at 1:11 PM, Levente Uzonyi <[hidden email]> wrote:

> On Sun, 26 May 2013, [hidden email] wrote:
>
>> Chris Muller uploaded a new version of Kernel to project The Trunk:
>> http://source.squeak.org/trunk/Kernel-cmm.760.mcz
>>
>> ==================== Summary ====================
>>
>> Name: Kernel-cmm.760
>> Author: cmm
>> Time: 26 May 2013, 11:25:19.426 am
>> UUID: 523782ae-3096-40ec-8031-77432a691908
>> Ancestors: Kernel-fbs.759
>>
>> - Move #isKindOf: to ProtoObject to allow the PointerFinder to work with
>> Proxies.
>
>
> Proxies shouldn't be implemented by subclassing ProtoObject.
>
>
> Levente
>
>
>>
>> =============== Diff against Kernel-fbs.759 ===============
>>
>> Item was removed:
>> - ----- Method: Object>>isKindOf: (in category 'class membership') -----
>> - isKindOf: aClass
>> -       "Answer whether the class, aClass, is a superclass or class of the
>> receiver."
>> -
>> -       self class == aClass
>> -               ifTrue: [^true]
>> -               ifFalse: [^self class inheritsFrom: aClass]!
>>
>> Item was added:
>> + ----- Method: ProtoObject>>isKindOf: (in category 'testing') -----
>> + isKindOf: aClass
>> +       "Answer whether the class, aClass, is a superclass or class of the
>> receiver."
>> +       ^ self class == aClass or: [ self class inheritsFrom: aClass ]!
>>
>>
>>
>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Kernel-cmm.760.mcz

Levente Uzonyi-2
On Sun, 26 May 2013, Chris Muller wrote:

> Why?

Because there's a better way:
http://lists.squeakfoundation.org/pipermail/squeak-dev/2008-November/132554.html

IIRC Igor extended his implementation, and it's probably part of Pharo
since 1.x.


Levente

>
> On Sun, May 26, 2013 at 1:11 PM, Levente Uzonyi <[hidden email]> wrote:
>> On Sun, 26 May 2013, [hidden email] wrote:
>>
>>> Chris Muller uploaded a new version of Kernel to project The Trunk:
>>> http://source.squeak.org/trunk/Kernel-cmm.760.mcz
>>>
>>> ==================== Summary ====================
>>>
>>> Name: Kernel-cmm.760
>>> Author: cmm
>>> Time: 26 May 2013, 11:25:19.426 am
>>> UUID: 523782ae-3096-40ec-8031-77432a691908
>>> Ancestors: Kernel-fbs.759
>>>
>>> - Move #isKindOf: to ProtoObject to allow the PointerFinder to work with
>>> Proxies.
>>
>>
>> Proxies shouldn't be implemented by subclassing ProtoObject.
>>
>>
>> Levente
>>
>>
>>>
>>> =============== Diff against Kernel-fbs.759 ===============
>>>
>>> Item was removed:
>>> - ----- Method: Object>>isKindOf: (in category 'class membership') -----
>>> - isKindOf: aClass
>>> -       "Answer whether the class, aClass, is a superclass or class of the
>>> receiver."
>>> -
>>> -       self class == aClass
>>> -               ifTrue: [^true]
>>> -               ifFalse: [^self class inheritsFrom: aClass]!
>>>
>>> Item was added:
>>> + ----- Method: ProtoObject>>isKindOf: (in category 'testing') -----
>>> + isKindOf: aClass
>>> +       "Answer whether the class, aClass, is a superclass or class of the
>>> receiver."
>>> +       ^ self class == aClass or: [ self class inheritsFrom: aClass ]!
>>>
>>>
>>>
>>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Kernel-cmm.760.mcz

Tobias Pape
This is new to me, but sounds interesting.
However, i know a lot code that creates proxies
Using ProtoObject …
Am 27.05.2013 um 02:50 schrieb Levente Uzonyi <[hidden email]>:

> On Sun, 26 May 2013, Chris Muller wrote:
>
>> Why?
>
> Because there's a better way: http://lists.squeakfoundation.org/pipermail/squeak-dev/2008-November/132554.html
>
> IIRC Igor extended his implementation, and it's probably part of Pharo since 1.x.
>
>
> Levente
>
>>
>> On Sun, May 26, 2013 at 1:11 PM, Levente Uzonyi <[hidden email]> wrote:
>>> On Sun, 26 May 2013, [hidden email] wrote:
>>>
>>>> Chris Muller uploaded a new version of Kernel to project The Trunk:
>>>> http://source.squeak.org/trunk/Kernel-cmm.760.mcz
>>>>
>>>> ==================== Summary ====================
>>>>
>>>> Name: Kernel-cmm.760
>>>> Author: cmm
>>>> Time: 26 May 2013, 11:25:19.426 am
>>>> UUID: 523782ae-3096-40ec-8031-77432a691908
>>>> Ancestors: Kernel-fbs.759
>>>>
>>>> - Move #isKindOf: to ProtoObject to allow the PointerFinder to work with
>>>> Proxies.
>>>
>>>
>>> Proxies shouldn't be implemented by subclassing ProtoObject.
>>>
>>>
>>> Levente
>>>
>>>
>>>>
>>>> =============== Diff against Kernel-fbs.759 ===============
>>>>
>>>> Item was removed:
>>>> - ----- Method: Object>>isKindOf: (in category 'class membership') -----
>>>> - isKindOf: aClass
>>>> -       "Answer whether the class, aClass, is a superclass or class of the
>>>> receiver."
>>>> -
>>>> -       self class == aClass
>>>> -               ifTrue: [^true]
>>>> -               ifFalse: [^self class inheritsFrom: aClass]!
>>>>
>>>> Item was added:
>>>> + ----- Method: ProtoObject>>isKindOf: (in category 'testing') -----
>>>> + isKindOf: aClass
>>>> +       "Answer whether the class, aClass, is a superclass or class of the
>>>> receiver."
>>>> +       ^ self class == aClass or: [ self class inheritsFrom: aClass ]!
>

Reply | Threaded
Open this post in threaded view
|

Re: The Trunk: Kernel-cmm.760.mcz

Chris Muller-3
Yes.  After looking at it, it appears the "goal" of Igor's
MessageCatchingProxy is to have a "clean slate" proxy.  I don't know
how this differs from simply inheriting from nil, unless it's to help
the tools (Browsers, etc.), which may rely on some Object/ProtoObject
methods, to work.

I can understand perhaps for a message counting or logging tool,
MessageCatchingProxy would make a lot of sense.  In my case for a DB
proxy, I'd end up copying at least several of the methods from
ProtoObject.

Whether one wants their proxy be a "clean slate" or inherit a "minimal
API", depends on what they want to do..

On Mon, May 27, 2013 at 1:20 AM, Tobias Pape <[hidden email]> wrote:

> This is new to me, but sounds interesting.
> However, i know a lot code that creates proxies
> Using ProtoObject …
> Am 27.05.2013 um 02:50 schrieb Levente Uzonyi <[hidden email]>:
>
>> On Sun, 26 May 2013, Chris Muller wrote:
>>
>>> Why?
>>
>> Because there's a better way: http://lists.squeakfoundation.org/pipermail/squeak-dev/2008-November/132554.html
>>
>> IIRC Igor extended his implementation, and it's probably part of Pharo since 1.x.
>>
>>
>> Levente
>>
>>>
>>> On Sun, May 26, 2013 at 1:11 PM, Levente Uzonyi <[hidden email]> wrote:
>>>> On Sun, 26 May 2013, [hidden email] wrote:
>>>>
>>>>> Chris Muller uploaded a new version of Kernel to project The Trunk:
>>>>> http://source.squeak.org/trunk/Kernel-cmm.760.mcz
>>>>>
>>>>> ==================== Summary ====================
>>>>>
>>>>> Name: Kernel-cmm.760
>>>>> Author: cmm
>>>>> Time: 26 May 2013, 11:25:19.426 am
>>>>> UUID: 523782ae-3096-40ec-8031-77432a691908
>>>>> Ancestors: Kernel-fbs.759
>>>>>
>>>>> - Move #isKindOf: to ProtoObject to allow the PointerFinder to work with
>>>>> Proxies.
>>>>
>>>>
>>>> Proxies shouldn't be implemented by subclassing ProtoObject.
>>>>
>>>>
>>>> Levente
>>>>
>>>>
>>>>>
>>>>> =============== Diff against Kernel-fbs.759 ===============
>>>>>
>>>>> Item was removed:
>>>>> - ----- Method: Object>>isKindOf: (in category 'class membership') -----
>>>>> - isKindOf: aClass
>>>>> -       "Answer whether the class, aClass, is a superclass or class of the
>>>>> receiver."
>>>>> -
>>>>> -       self class == aClass
>>>>> -               ifTrue: [^true]
>>>>> -               ifFalse: [^self class inheritsFrom: aClass]!
>>>>>
>>>>> Item was added:
>>>>> + ----- Method: ProtoObject>>isKindOf: (in category 'testing') -----
>>>>> + isKindOf: aClass
>>>>> +       "Answer whether the class, aClass, is a superclass or class of the
>>>>> receiver."
>>>>> +       ^ self class == aClass or: [ self class inheritsFrom: aClass ]!
>>
>