(.module: [lux #* [abstract [equivalence (#+ Equivalence)] [monad (#+ do)]] [control ["<>" parser ["<.>" text (#+ Parser)]]] [data [text ["%" format (#+ Format)]]] [time ["." instant (#+ Instant)]]] ["." / #_ ["#." date] ["#." time]]) (type: #export Time Instant) (def: #export equivalence (Equivalence Time) instant.equivalence) (def: #export (format value) (Format Time) (%.format (/date.format (instant.date value)) (/time.format (instant.time value)))) (def: #export parser (Parser Time) (do <>.monad [date /date.parser time /time.parser] (wrap (instant.from_date_time date time))))