On Sat, Apr 19, 2014 at 9:10 AM, Nicolas Cellier <nicolas.cellier.aka.nice@gmail.com> wrote:

2014-04-19 15:29 GMT+02:00 David T. Lewis <lewis@mail.msen.com>:

On Sat, Apr 19, 2014 at 09:12:47AM -0400, David T. Lewis wrote:
> On Sat, Apr 19, 2014 at 10:34:04AM +0200, Nicolas Cellier wrote:
> > Hi Dave,
> > did you lurk at the work in Pharo?
> > I think they followed similar approach, but they kept jdn seconds and
> > nanos, representing time in UTC, and they used UTC clock exlcusively.
> > It would be interesting to compare the timings vs latest Pharo (3.0).
>
> Hi Nicolas,
>
> Yes, I'm aware of the Pharo work.
>
> The approach that I am trying now is based on my earlier work with the
> Olson time zone tables in http://www.squeaksource.com/TimeZoneDatabase.

<OT>
Well, what do you know, it seems that I just got my first link from Wikipedia.
On http://en.wikipedia.org/wiki/Tz_database#Use_in_software_systems there
is a link for "The Squeak Smalltalk time package" that points to the Olson
time zone database for Squeak.
</OT>

Dave



Congrats for the fame ;)
And thanks for reporting your observations about Integer and Fraction efficiency.
A 64 bits Spur should also scale our SmallIntegers up to 2^62, which can completely change the figures anyway.

Likely 2^60.  3 bits for tags, 1 bit for sign, hence SmallInteger maxVal = (2^60) - 1 , which is 36,000 years into the future :-)

DateAndTime fromSeconds: (1 << 60) - 1 // 1000000 38435-08-17T21:30:06-07:00

--
best,
Eliot