Subject | : Date extension module |
Article No | : 484 |
Date | : 2007/11/20(Tue) 23:02:11 |
Contributor | : AKio Morita |
SADでの時刻表現は、日本標準時固定かつ閏秒なしなので o 日本国外 o 閏秒対応な環境 での運用時にDate[]/ToDate[]/DateString[]等からの Local Time出力がずれて見えるという問題があります #Day[]の曜日も時差があるため正しく無い場合があります
KBFrameには常に時刻を表示する機能があるため、 間違った Local Timeを表示されると紛らわしいので これを修正するために Date[]/FromDate[]/ToDate[]/ DateString[]/FromDateString[]/Day[]関数を Time Zone & 閏秒対応のものに置き換える extension moduleを作りました
SADの内部時刻表現(1900-01-01 00:00:00 JSTからの 経過秒数)の表現域は、一般的なUnixの32bit符号付き整数による time_t(1970-01-01 00:00:00 UTCからの経過秒数)には納まらないので DJBの libtaiライブラリによる TAI64表現を使用しています。
このextension moduleを導入して意味があるのは以下の方々です o UTCとの時差が +0900以外の環境で Local Timeの出力が欲しい方々 o 閏秒対応のシステムを運用中で、Local Time表現に現れる 13秒の時差(UTC-TAI-10)が問題になる方々
残念ながら、DST(夏時間)には対応しておりません #各国・各地方ごとの法律で定められ頻繁に変更されるので、 #フルサポートはなかなか難しいそうです
入手はこちらから URL: http://acc-physics.kek.jp/SAD/SADrelease/distfiles/Date-Rev1.tar.gz Size: 12092 bytes Checksum: SHA256: 52459e9589e719ae4509eab127e953c6152bd0ecf0ec57636ae13feb58b7bace SHA1: 12abea3673645678c01843d10522e510fb5bca32 MD5: 5990a8abde131a4ff087b0a1375f3206
|