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

On Jul 8, 2013, at 8:43 AM, Stéphane Ducasse <[email protected]> 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 <[email protected]>
>> To: [email protected]
>> 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
> 

Reply via email to