On Jul 8, 2013, at 8:45 AM, St�phane Ducasse <stephane.ducasse@inria.fr> wrote:

https://pharo.fogbugz.com/default.asp?11149


There is already

https://pharo.fogbugz.com/f/cases/10016

And yes, we need more people to look at the bug tracker (but everyone knows that).

Marcus



On Jul 8, 2013, at 8:43 AM, St�phane Ducasse <Stephane.Ducasse@inria.fr> wrote:

It seems that we never integrate this change (there was not bug entry :)).
I will open a bug entry if not.

Stef

Begin forwarded message:

From: David Gorisek <david.gorisek@e-racuni.com>
To: pharo-project@lists.gforge.inria.fr
Cc: 
Date: Wed, 13 Mar 2013 22:24:04 +0100
Subject: Pharo and scaled decimals
Hello all,

I am testing Pharo and I have noticed that the Pharo compiler does not treat ScaledDecimals the same way they are treated in other Smalltalk dialects (e.g. VW, VAST, Dolphin, STX, etc.).

For example the following is a valid code representing an instance of ScaledDecimal/FixedPoint in all other dialect.

1.0s  + 2.0s

In Phare the code above wont compile, it has to be written as:

1.0s1 + 2.0s1

So I have made the following quick change to make Pharo compatible with other Smalltalk dialects. Maybe this change could be included in the next version of Pharo?

SqNumberParser>>#readScale
    "read the scale if any (stored in instVar).
    Answer true if found, answer false if none.
    If scale letter is not followed by a digit, this is not considered as an error.
    Scales are always read in base 10, though i do not see why..."

    scale := 0.
    sourceStream atEnd
        ifTrue: [ ^ false ].
    (sourceStream peekFor: $s)
        ifFalse: [ ^ false ].
    scale := self nextUnsignedIntegerOrNilBase: 10.
    scale
        ifNil: [ 
            scale := 0.
            (sourceStream peek ifNil: [false] ifNotNil: [ :nextChar | nextChar isLetter])
                ifTrue: [ 
                    sourceStream skip: -1.    "ungobble the s"
                    ^ false ]
                ifFalse: [ ^ true ] ].
    ^ true