[Python-ideas] Add time.time_ns(): system clock with nanosecond resolution
Nick Coghlan
ncoghlan at gmail.com
Sat Oct 14 11:46:50 EDT 2017
On 14 October 2017 at 18:21, Antoine Pitrou <solipsis at pitrou.net> wrote:
> On Sat, 14 Oct 2017 10:49:11 +0300
> Serhiy Storchaka <storchaka at gmail.com>
> wrote:
> > I don't like the idea of adding a parallel set of functions.
> >
> > In the list of alternatives in PEP 410 there is no an idea about fixed
> > precision float type with nanoseconds precision. It can be implemented
> > internally as a 64-bit integer, but provide all methods required for
> > float-compatible number. It would be simpler and faster than general
> > Decimal.
>
> I agree a parallel set of functions is not ideal, but I think a parallel
> set of functions is still more appropriate than a new number type
> specific to the time module.
>
> Also, if you change existing functions to return a new type, you risk
> breaking compatibility even if you are very careful about designing the
> new type.
>
Might it make more sense to have a parallel *module* that works with a
different base data type rather than parallel functions within the existing
API?
That is, if folks wanted to switch to 64-bit nanosecond time, they would
use:
* time_ns.time()
* time_ns.monotonic()
* time_ns.perf_counter()
* time_ns.clock_gettime()
* time_ns.clock_settime()
The idea here would be akin to the fact we have both math and cmath as
modules, where the common APIs conceptually implement the same algorithms,
they just work with a different numeric type (floats vs complex numbers).
Cheers,
Nick.
--
Nick Coghlan | ncoghlan at gmail.com | Brisbane, Australia
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.python.org/pipermail/python-ideas/attachments/20171015/ff981374/attachment-0001.html>
More information about the Python-ideas
mailing list