Human-readable unit-aware calculator
Math::Calc::Units is a simple calculator that keeps track of units. It
currently handles combinations of byte sizes and duration only, although adding
any other multiplicative types is easy. Any unknown type is treated as a unique
user type (with some effort to map English plurals to their singular forms).
The primary intended use is via the ucalc script that prints out all of the
"readable" variants of a value. For example, "3 bytes" will only produce "3
byte", but "3 byte / sec" produces the original along with "180 byte / minute",
"10.55 kilobyte / hour", etc.