時間の差から簡単に単位変換できるライブラリDateTime::Smartをリリースしました

この前、誕生日を迎えたのですが、自分が何歳になったのかいまいち思い出せなくて、rubyで計算させようとしたのですが、時刻の差から年を出すのはそれほど簡単ではなかったので、ライブラリにしました。

なにやらruby-listでもちょうどその話題があがっていたようです。

こんな風に使えます。

require 'date'
require 'date_time/duration'
require 'date_time/smart'

today = DateTime::Smart.today
birth  = DateTime::Smart.new(1984,12,26)

(today - birth).years  #=> 23

# 三日前の日付をつくる
DateTime::Smart.today.subtract(:days => 3)
gem install date_time-smart -y

でインストールできます。
date_time-smartとdate_time-durationに分かれていますが、今になってからほとんど依存しているのでdate_time-durationをdate_time-smartに含めれば良かったかなと少し思ってます。

開発はCodeReposで行ってますので、
http://coderepos.org/share/browser/lang/ruby/date_time-smart
何かいいアイディアがあれば入れてみていただけると幸いです。