New Issue: What module should define the 'stopwatch' type?

16394, “bradcray”, “What module should define the ‘stopwatch’ type?”, “2020-09-15T20:39:19Z”

As part of issue #16393, we are renaming the Timer type to stopwatch for clarity; and as a larger issue, we’re reconsidering the contents of the Time module, as there is significant overlap with DateTime. This issue asks what module should define the stopwatch type where some options are:

  • fold it into DateTime (rationale: it relates to time)

  • rename DateTime to Time and fold it into there (rationale: simpler name, and dates inherently relate to time)

  • keep it in Time but remove other stuff that’s redundant or should be elsewhere (rationale: stopwatches are more about durations and measurement than dates and clocks)

  • put it in a new module where options are:
    a new top-level module with the name…

    • Timing[s] (rationale: DateTime is more about reasoning about dates and times whereas stopwatch is more about timings / durations)
    • Duration (rationale: see previous)
    • Stopwatch (rationale: obvious choice; anti-rationale: one-type module?)

    e.g., a new sub-module of some sort of umbrella module?

    • e.g., Diagnostics.Timings (rationale: could be used to group related things like Memory, CommDiagnostics)

    (also should this be a package rather than standard module?)