[Python-Dev] proposal: add basic time type to the standard library

M.-A. Lemburg mal@lemburg.com
Fri, 08 Feb 2002 20:05:03 +0100

Guido van Rossum wrote:
> >     http://effbot.org/ideas/time-type.htm
> >
> > I can produce PEP and patch if necessary.
> Yes, a PEP, please!  Jim Fulton has been asking for this for a long
> time too.  His main requirement is that timestamp objects are small,
> both in memory and as pickles, because Zope keeps a lot of these
> around.  They are currently represented either as long ints (with a
> little under 64 bits) or as 8-byte strings.  A dedicated timestamp
> object could be smaller than that.
> Your idea of a base type (which presumably standarizes at least one
> form of representation) sounds like a breakthrough that can help
> satisfy different other needs.

Sounds like a plan :-) 

In order to make mxDateTime subtypes of this new type we'd need to
make sure that the datetime type uses a true struct subset of what
I have in DateTime objects now:

typedef struct {

    /* Representation used to do calculations */
    long absdate;               /* number of days since 31.12. in the year 1 BC
                                   calculated in the Gregorian calendar. */
    double abstime;             /* seconds since 0:00:00.00 (midnight)
                                   on the day pointed to by absdate */

 ...lots of broken down values needed to assure roundtrip safety...


Depending on the size of PyObject_HEAD, this should meet Jim
Fultons requirements (the base type would of course not implement
the "..." part :-).

Marc-Andre Lemburg
CEO eGenix.com Software GmbH
Company & Consulting:                           http://www.egenix.com/
Python Software:                   http://www.egenix.com/files/python/