current-time-list
Richard Stallman <[email protected]>
| Newsgroups | gmane.emacs.devel |
|---|---|
| Message-ID | <[email protected]> |
[[[ To any NSA and FBI agents reading my email: please consider ]]]
[[[ whether defending the US Constitution against all enemies, ]]]
[[[ foreign or domestic, requires you to follow Snowden's example. ]]]
The doc string of current-time-list suggests that it will be present
for just a few years, then disappear, adding up to a permanent
incompatible change.
current-time-list is a variable defined in ‘C source code’.
Its value is t
Whether ‘current-time’ should return list or (TICKS . HZ) form.
This boolean variable is a transition aid. If t, ‘current-time’ and
related functions return timestamps in list form, typically
(HIGH LOW USEC PSEC); otherwise, they use (TICKS . HZ) form.
Currently this variable defaults to t, for behavior compatible with
previous Emacs versions. Developers are encouraged to test
timestamp-related code with this variable set to nil, as it will
default to nil in a future Emacs version, and will be removed in some
version after that.
This change is designed to remind developers to update the programs
that they are currently developing. But old Lisp programs will simply
be broken, in a way that leaves nothing to help people years from now
figure out why their old programs don't work any more. They will
have to debug why those programs fail.
Do you see what I mean?
How about redesign the plans for the future of this change
to avoid causing that kind of breakage.
Idea: instead of changing the behavior of `current-time', etc, define
new functions to handle timestamps the new way, and keep both sets
permanently. Perhaps give a warning when the old time-functions are
used, but don't ever delete them or change them.
--
Dr Richard Stallman (https://stallman.org)
Chief GNUisance of the GNU Project (https://gnu.org)
Founder, Free Software Foundation (https://fsf.org)
Internet Hall-of-Famer (https://internethalloffame.org)