##数日前にここに書いた、date->string/string->date 互換のフォーマッタ/パーザを生成するモジュールです。一通り書けたみたいなので晒しておきます。
#これを書いてる過程でsrfi-19.scmのバグをいくつか発見しました。
#その一
#gosh> (define d (current-date))
d
gosh> (slot-set! d 'nanosecond 1)
#<undef>
gosh> (date->string d "~f")
"04.0e-9"
#その二
#gosh> (slot-set! d 'hour 0)
#<undef>
gosh> (date->string d "~I ~p")
"00 AM"
#`~I'
時、0を補填、12時制(01...12)
#ちなみに、~l も同じですね。
#あと、~U、~V、~W はどういう挙動が正しいのかよくわからないので、srfi-19.scmの挙動をそのまま引き継いでいます。
#この挙動がはっきりすると、~U|~V|~W+~w で日付が特定できるんだけどなぁ