From a98b5a77d77c79613c9b812cd550b40cc333f1f9 Mon Sep 17 00:00:00 2001
From: Ashley Yakeley <ashley@yakeley.org>
Date: Thu, 3 Aug 2017 17:08:44 -0700
Subject: [PATCH] Quick start documentation

---
 lib/Data/Time.hs | 27 +++++++++++++++++++++++++++
 1 file changed, 27 insertions(+)

diff --git a/lib/Data/Time.hs b/lib/Data/Time.hs
index 99f714d..eaa1d9d 100644
--- a/lib/Data/Time.hs
+++ b/lib/Data/Time.hs
@@ -1,3 +1,30 @@
+{-|
+
+= Quick Start
+
+Use these types for time regardless of location (not caring about leap-seconds):
+
+* 'UTCTime' for actual times
+* 'NominalDiffTime' for differences between times, i.e. durations
+
+Use these types for the ways people refer to time:
+
+* 'Day' for something like June 27th 2017
+* 'TimeOfDay' for something like 5pm
+* 'LocalTime' for a 'Day' with a 'TimeOfDay'
+* 'TimeZone' for a time zone offset (not actually the time zone itself) like -0700
+* 'ZonedTime' for a 'LocalTime' with a 'TimeZone'
+
+Use this for low-latency timing:
+
+* 'Data.Time.Clock.System.SystemTime'
+
+These are less commonly needed:
+
+* 'Data.Time.Clock.TAI.AbsoluteTime' and 'DiffTime' if you do care about leap-seconds.
+* 'Data.Time.Clock.TAI.LeapSecondMap' for tracking the leap-seconds
+* 'UniversalTime' for time based on Earth rotation
+-}
 module Data.Time
 (
     module Data.Time.Calendar,
-- 
GitLab