Another alternative is the public lists-of-clocks.
After watching this thread with amusement and frustration, amusement
because it is so big, and so many people have so many different
opinions, frustration, because it seems that few of the clocks that
are available are anywhere near ideal for any particular stated
characteristic, and because none of the APIs presented provide a way
for the user to specify the details of the characteristics of the
desired clock, I think this idea of a list-of-clocks sounds better
and better.
Hopefully, for each system, the characteristics of each clock can
be discovered, and fully characterized in available metadata for the
clock...
tick rate, or list of tick rates
maximum variation of tick rate
precision
maximum "helicopter drop" jump delta
monotonicity
frequency of rollover or None
base epoch value or None
behavior during system sleep, hibernate, suspend, shutdown, battery
failure, flood, wartime events, and acts of God. These last two may
have values that are long prose texts full of political or religious
rhetoric, such as the content of this thread :)
any other characteristics I forgot to mention
Of course, it is not clear that all of these characteristics can be
determined based on OS/Version; hardware vendors may have different
implementations.
There should be a way to add new clock objects to the list, given a
set of characteristics, and an API to retrieve them, at least by
installing a submodule that provides access to an additional clock.