[squeak-dev] UTCDateAndTime updated for Squeak 4.6/5.0
David T. Lewis
lewis at mail.msen.com
Mon May 25 14:48:20 UTC 2015
On Sun, May 24, 2015 at 11:22:48PM +0200, Levente Uzonyi wrote:
> On Sun, 24 May 2015, David T. Lewis wrote:
>
> >UTCDateAndTime is a UTC based implementation of class DateAndTime with
> >one instance variable representing the magnitude of the point in time,
> >and another representing local time zone offset.
> >
> >I recommend loading with the SAR from http://wiki.squeak.org/squeak/6197,
> >as maintaining this in Montecello is problematic.
> >
> >After the 4.6/5.0 release, I would like to suggest moving Chronology out
> >of the Kernel package into its own package, so that changes in Chronology
> >can be maintained in Montecello without conflicting with the rest of
> >Kernel.
> >
> >Spur notes: The Spur image provides a huge performance when loading this
> >set of changes. There are two steps in the loading process in which all
> >DateAndTime instances need to be #becomed into new instances. This is
> >painfully slow in the traditional image (with or without Cog), and it is
> >amazing fast in Spur.
>
> Similar speed can be achieved in V3 images (on any VM), if all instances
> are exchanged in one shot. In LX-2.2.cs:
>
> | oldInstances newInstances |
> oldInstances := DateAndTime allInstances, TimeStamp allInstances.
> newInstances := oldInstances collect: [ :each |
> each class == DateAndTime
> ifTrue: [ each asLXDateAndTime ]
> ifFalse: [ each asLXTimeStamp ] ].
> oldInstances elementsForwardIdentityTo: newInstances.
>
> And in LX-4.1.cs:
>
> | oldInstances newInstances |
> oldInstances := LXDateAndTime allInstances, LXTimeStamp allInstances.
> newInstances := oldInstances collect: [ :each |
> each class == LXDateAndTime
> ifTrue: [ each asDateAndTime ]
> ifFalse: [ each asTimeStamp ] ].
> oldInstances elementsForwardIdentityTo: newInstances.
Levente,
Thank you! I was not aware of that.
Dave
More information about the Squeak-dev
mailing list
|