MessageTally bug or VM parameter bug?

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

MessageTally bug or VM parameter bug?

Frank Shearar-3
I ran a MessageTally and was told that False doesn't understand #-.
This, it turns out, was because MessageTally >> #computeGCStats
assumes that all VM parameters are Number-like. Changing the method to
this:

computeGCStats
        "Compute the deltas in the GC stats.  Serves for reporting,
hibernating and unhibernating."
        SmalltalkImage current getVMParameters keysAndValuesDo:
                [ :idx :gcVal |
                gcVal isNumber ifTrue: [ "This is the new line"
                        gcVal ifNotNil: [gcStats at: idx put: (gcVal - (gcStats at: idx))]]]

lets the MessageTally run to completion. Now this might be because I'm
running a Cog r.2672 and a 4.3 image. I don't know.

My question is this: should SmalltalkImage current getVMParameters
keys be a collection of Numbers? Or should MessageTally defend against
things not being numbers? Or have I just stumbled across a bad
image/VM combination?

frank

Reply | Threaded
Open this post in threaded view
|

Re: MessageTally bug or VM parameter bug?

Eliot Miranda-2



On Thu, Jan 17, 2013 at 12:49 PM, Frank Shearar <[hidden email]> wrote:
I ran a MessageTally and was told that False doesn't understand #-.
This, it turns out, was because MessageTally >> #computeGCStats
assumes that all VM parameters are Number-like. Changing the method to
this:

computeGCStats
        "Compute the deltas in the GC stats.  Serves for reporting,
hibernating and unhibernating."
        SmalltalkImage current getVMParameters keysAndValuesDo:
                [ :idx :gcVal |
                gcVal isNumber ifTrue: [ "This is the new line"
                        gcVal ifNotNil: [gcStats at: idx put: (gcVal - (gcStats at: idx))]]]

lets the MessageTally run to completion. Now this might be because I'm
running a Cog r.2672 and a 4.3 image. I don't know.

My question is this: should SmalltalkImage current getVMParameters
keys be a collection of Numbers? Or should MessageTally defend against
things not being numbers? Or have I just stumbled across a bad
image/VM combination?

Both of the last two.  This was fixed in 4.4 a few weeks ago.
The VM change was to answer a boolean for parameter 65, this being whether the VM supports multiple bytecode sets or not.
--
best,
Eliot


Reply | Threaded
Open this post in threaded view
|

Re: MessageTally bug or VM parameter bug?

Frank Shearar-3
On 17 January 2013 21:14, Eliot Miranda <[hidden email]> wrote:

>
>
>
> On Thu, Jan 17, 2013 at 12:49 PM, Frank Shearar <[hidden email]>
> wrote:
>>
>> I ran a MessageTally and was told that False doesn't understand #-.
>> This, it turns out, was because MessageTally >> #computeGCStats
>> assumes that all VM parameters are Number-like. Changing the method to
>> this:
>>
>> computeGCStats
>>         "Compute the deltas in the GC stats.  Serves for reporting,
>> hibernating and unhibernating."
>>         SmalltalkImage current getVMParameters keysAndValuesDo:
>>                 [ :idx :gcVal |
>>                 gcVal isNumber ifTrue: [ "This is the new line"
>>                         gcVal ifNotNil: [gcStats at: idx put: (gcVal -
>> (gcStats at: idx))]]]
>>
>> lets the MessageTally run to completion. Now this might be because I'm
>> running a Cog r.2672 and a 4.3 image. I don't know.
>>
>> My question is this: should SmalltalkImage current getVMParameters
>> keys be a collection of Numbers? Or should MessageTally defend against
>> things not being numbers? Or have I just stumbled across a bad
>> image/VM combination?
>
>
> Both of the last two.  This was fixed in 4.4 a few weeks ago.
> The VM change was to answer a boolean for parameter 65, this being whether
> the VM supports multiple bytecode sets or not.

My apologies; I should have remembered this :(

Thanks, Eliot.

frank

> --
> best,
> Eliot
>
>
>

Reply | Threaded
Open this post in threaded view
|

Re: MessageTally bug or VM parameter bug?

Eliot Miranda-2
not at all :)  The internet means not having to remember trivia... or does it?  I can never remember...


On Thu, Jan 17, 2013 at 1:35 PM, Frank Shearar <[hidden email]> wrote:
On 17 January 2013 21:14, Eliot Miranda <[hidden email]> wrote:
>
>
>
> On Thu, Jan 17, 2013 at 12:49 PM, Frank Shearar <[hidden email]>
> wrote:
>>
>> I ran a MessageTally and was told that False doesn't understand #-.
>> This, it turns out, was because MessageTally >> #computeGCStats
>> assumes that all VM parameters are Number-like. Changing the method to
>> this:
>>
>> computeGCStats
>>         "Compute the deltas in the GC stats.  Serves for reporting,
>> hibernating and unhibernating."
>>         SmalltalkImage current getVMParameters keysAndValuesDo:
>>                 [ :idx :gcVal |
>>                 gcVal isNumber ifTrue: [ "This is the new line"
>>                         gcVal ifNotNil: [gcStats at: idx put: (gcVal -
>> (gcStats at: idx))]]]
>>
>> lets the MessageTally run to completion. Now this might be because I'm
>> running a Cog r.2672 and a 4.3 image. I don't know.
>>
>> My question is this: should SmalltalkImage current getVMParameters
>> keys be a collection of Numbers? Or should MessageTally defend against
>> things not being numbers? Or have I just stumbled across a bad
>> image/VM combination?
>
>
> Both of the last two.  This was fixed in 4.4 a few weeks ago.
> The VM change was to answer a boolean for parameter 65, this being whether
> the VM supports multiple bytecode sets or not.

My apologies; I should have remembered this :(

Thanks, Eliot.

frank

> --
> best,
> Eliot
>
>
>




--
best,
Eliot