On Mon, Jun 27, 2016 at 5:30 AM, David T. Lewis <lewis@mail.msen.com> wrote:
A bit off topic, but is is worth asking:
If we really want to model Date as a position on a continuum of date
values, and if we think that the implementation of Date as a kind of
Timespan is not right, then shouldn't we just consider going back to
the earlier (Squeak 3.6 and earlier) implementation of Date as a Magnitude,
rather than Date as a Timespan?

I think this is a very relevant question. We may have to distinguish a Day from a Date.

IMHO a birthday is a perfect example. It's defined by a day+month+year. If I was traveling I would celebrate the birthday in local time, so the generic "birthday" needs to compare equal to all the local dates independent of time zone.

This is how Dates worked before we made them Timespans (because they had no time, and hence no time zone). And this is also how they worked after I added the "nil" offset hack (which ignores the timezone). But it's a hack, not a good design. I'm not entirely sure what a good design would look like that also does not break old code.

- Bert -