Yes 

Date fromString: '6-Jan-03'
-> 6 January 2003

is also wrong. So david just tried to patch this wrong behavior.

Stef


On Jan 16, 2010, at 6:02 PM, [email protected] wrote:

> I'm afraid the 'fix' is trying to repair something is not broken!  
> 
> Date fromString: '6-Jan-10'. giving "6 January 1910" has not anything wrong.  
> Within five year we'll have users/programmers complaining that:
> 
> Date fromString: '6-Jan-16'. gave "6 January 1916" and *obviously* it should 
> have given "6 January 2015"!!
> 
> Rather document that years given with two figures get counted from 1900 (as 
> it used to be in last century) and have people to use four digits for years 
> in the 2000s.
> 
> Otherwise:
> 
> 1) We need to get used to the concept of an epoch time for Pharo; or
> 
> 2) the number to be tested has to be the current year!
> 
> My 0.019999. . .
> 
> --
> Cesar Rabak
> 
> 
> Em 16/01/2010 07:57, Stéphane Ducasse < [email protected] > escreveu:
> 
> 
> hi guys
> 
> can one of you give a look at the this fix because I'm confused.   
> Kernel-DavidHotham.538
> 
> year < 20 ifTrue: [year := 2000 + year] 
> was
> year < 10 ifTrue: [year := 2000 + year] 
> 
> both solutions look strange to me.
> 
> http://code.google.com/p/pharo/issues/detail?id=1749
> 
> 
> readFrom: aStream 
> "Read a Date from the stream in any of the forms:  
> (5 April 1982; 5-APR-82)  
> (April 5, 1982)  
> (4/5/82) 
> (5APR82)"
> | day month year |
> aStream peek isDigit
> ifTrue: [day := Integer readFrom: aStream].
> [aStream peek isAlphaNumeric]
> whileFalse: [aStream skip: 1].
> aStream peek isLetter
> ifTrue: ["number/name... or name..."
> month := (String new: 10) writeStream.
> [aStream peek isLetter]
> whileTrue: [month nextPut: aStream next].
> month := month contents.
> day isNil
> ifTrue: ["name/number..."
> [aStream peek isAlphaNumeric]
> whileFalse: [aStream skip: 1].
> day := Integer readFrom: aStream]]
> ifFalse: ["number/number..."
> month := Month nameOfMonth: day.
> day := Integer readFrom: aStream].
> [aStream peek isAlphaNumeric]
> whileFalse: [aStream skip: 1].
> year := Integer readFrom: aStream.
>>>     year < 20 ifTrue: [year := 2000 + year] 
> ifFalse: [ year < 1900 ifTrue: [ year := 1900 + year]].
> 
> ^ self
> year: year
> month: month
> day: day
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
> 
> 
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project


_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to