unofficial mirror of emacs-devel@gnu.org 
 help / color / mirror / code / Atom feed
From: "Eric S. Raymond" <esr@thyrsus.com>
To: Paul Eggert <eggert@cs.ucla.edu>
Cc: emacs-devel@gnu.org
Subject: Re: Repo cpnversion progress report
Date: Fri, 31 Jan 2014 23:19:27 -0500	[thread overview]
Message-ID: <20140201041927.GA20638@thyrsus.com> (raw)
In-Reply-To: <52EC3A5D.60404@cs.ucla.edu>

Paul Eggert <eggert@cs.ucla.edu>:
> Eric S. Raymond wrote:
> >I'm not real happy about the action stamps being so long as it is.
> 
> How about a POSIX timestamp rather than an ISO 8601 string?
> "1391204651!larsi@gnus.org", for example, instead of
> "2014-01-31T21:44:11!larsi@gnus.org".  Although it's just 9
> characters difference, the savings add up when you're trying to read
> a screenful of these things.

Clever hack!  I really, really liked this idea - for about thirty seconds.

Then I remembered, dammit, that I have run into a fair amount of
confusion over whether that kind of Unix time is based on a UTC or
local epoch.  That's why the Z in RFC3339 date format is functional; it 
pins the stamp to Zulu time. 

Yes, I know POSIX time is supposed to be seconds UTC (sort of, modulo
leap seconds).  People get confused anyway - in fact I remember a
Linux distribution that actually gave you an installation choice about
whether to keep your integer timestamps in local or in UTC a la POSIX.  I 
boggled.

If we leave this ambiguous in the representation, someone in the
future will curse us.  And not without reason.  Because even if they
know the right UTC-based interpretation of Unix time, they have no way
to be sure everyone who touched the data *before* them did.

(Wearing my GPSD maintainer hat I have to deal with crap like this a lot.)

More generally, we'd lose the self-describing property. It's hard to look 
at an RFC3339 timestamp and not know what it is.  Not so much with an integer
literal.

So yes, a clever hack.  But, alas.  Not, I fear, a good one.

If we really had to deal with screenfulls of these things the tradeoff
might potentially be different.  That actually happened in the change
comments of the NUT project. Not here, though.  The worst case I've
seen in the Emacs history is two of them per line, one pair per
commit message or ChangeLog entry.

> As I understand it the first glimmer of Emacs in RMS's eye was circa
> 1972, so even if we magically resurrected his original code the
> timestamps would never need to be negative.  We could say that
> time-since-1970 is "Emacs time".

Ha.  You know what popped into my head when I read that last?  "1970
is as old as the world."

Text Editors in The Lord of the Rings

http://crookedtimber.org/2011/07/30/text-editors-in-the-lord-of-the-rings/

Emacs: Fangorn

    Vast, ancient, gnarled and mostly impenetrable, tended by a small band
    of shepherds old as the world itself, under the command of their
    leader, Neckbeard. They possess unbelievable strength, are
    infuriatingly slow, and their land is entirely devoid of women. It
    takes forever to say anything in their strange, rumbling language.

When I read that, I do not mind telling you that I felt my age. :-)

I've been thinking about that satire a lot lately.
-- 
		<a href="http://www.catb.org/~esr/">Eric S. Raymond</a>



  parent reply	other threads:[~2014-02-01  4:19 UTC|newest]

Thread overview: 38+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-01-30 19:55 Repo cpnversion progress report Eric S. Raymond
2014-01-30 20:11 ` Andreas Schwab
2014-01-30 20:27   ` Eric S. Raymond
2014-01-30 22:04     ` Andreas Schwab
2014-01-30 21:23 ` Eli Zaretskii
2014-01-30 21:42   ` Eric S. Raymond
2014-01-31  7:50     ` Eli Zaretskii
2014-01-31 15:25       ` Eric S. Raymond
2014-01-31 15:57         ` David Kastrup
2014-01-31 16:15         ` Eli Zaretskii
2014-01-31 17:31       ` Karl Fogel
2014-01-31 17:56         ` Juanma Barranquero
2014-01-31 19:23           ` Eric S. Raymond
2014-01-31 19:55             ` Juanma Barranquero
2014-01-31 20:30             ` Eli Zaretskii
2014-01-31 21:20             ` Sean Sieger
2014-01-31 21:22             ` Sean Sieger
2014-02-01  9:38             ` David Kastrup
2014-01-31 19:31           ` Karl Fogel
2014-01-31 20:18             ` Eli Zaretskii
2014-02-01 11:04             ` Richard Stallman
2014-01-31 18:16         ` Eric S. Raymond
2014-01-31 19:44           ` Paul Eggert
2014-01-31 21:07             ` Eric S. Raymond
2014-02-01  0:05               ` Paul Eggert
2014-02-01  0:25                 ` Juanma Barranquero
2014-02-01  4:19                 ` Eric S. Raymond [this message]
2014-02-01  8:40                 ` Eli Zaretskii
2014-02-02  1:03                 ` Stefan Monnier
2014-01-31 21:03           ` Stefan Monnier
2014-01-31 21:51             ` Eric S. Raymond
2014-01-31 23:15               ` Jan D.
2014-02-01  4:22                 ` Eric S. Raymond
2014-01-31 23:16               ` Stefan Monnier
2014-02-01  4:26                 ` Eric S. Raymond
2014-02-01 11:04                 ` Eli Zaretskii
2014-02-02  0:58                   ` Stefan Monnier
2014-02-02 10:24                     ` Eric S. Raymond

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20140201041927.GA20638@thyrsus.com \
    --to=esr@thyrsus.com \
    --cc=eggert@cs.ucla.edu \
    --cc=emacs-devel@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
Code repositories for project(s) associated with this public inbox

	https://git.savannah.gnu.org/cgit/emacs.git

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).