我々の時間を計る単位は,秒から月まであり,かなり複雑で,非対称で,連結 できないので,徹頭徹尾,頭の計算で間に合わせることは,ほとんど不可能で す.本当に,非道な神が我々を時間の奴隷にし,我々がぼんやりした繰り返し 仕事と不快な驚きへの従属から逃げることをほぼ不可能にしようと企てたので, 彼は我々の現在のシステムを伝える以上のことを行うことができませんでした. それは,台形の建築用ブロックの集合に似ていて垂直や水平の表面が無く,最 も単純な考えで,建造物を飾り立てることを要求された言語に似ていて役に立 たない微粒子と長い遠回しな表現です.我々がはっきりとした,または,少な くとも頭打ちな経験に直面することを可能にした,より成功した言語と科学の のパターンと異なり,我々の時間を計るシステムは,静かにそして繰り返し, 時間の恐怖を呼び起こします. ...それは,建築家がフィートで長さを,メートルで幅を,そしてellで 高さを計る必要があるかのようなものです.基本的な指示用のマニュアルで, 五つの異なる言語の知識を必要とするかのようなものです.我々が,どうにも ならない混乱した気分で,この間の火曜日や日曜日からの一週間といった,短 い過去あるいは近い将来を調査することがよくあるのは,不思議ではありませ ん. ... 1
— Robert Grudin, Time and the Art of Living.
このセクションでは,gnuプログラムが受け入れる,文章上での日付の表
現を記述します.これらは,様々なプログラムの引数としてユーザが供給可能
な文字列です.(getdate
関数による)Cのインターフェースはここでは
述べません.
ここでの日付の構文は,0年から表現することは可能ですが,コンピュータの
整数は,そのような長い範囲を表現することができないことがよくあります.
POSIXシステム上では,時刻は1970-01-01 00:00:00 utcから
始まります.POSIXは,POSIXエポック時間より前と,遠
い将来の時間のサポートを要求しません.伝統的なUnixシステムは,32ビット
の符号付きtime_t
があり,1901-12-13 20:45:52から2038-01-19
03:14:07 utcまで表現可能です.64ビットの符号付きtime_t
を用
いたシステムでは,知られている宇宙の一生の全ての時間を表現可能です.