| Module Info
| Add a review of Date-Calc
Date::Calc was a really useful module in its day.
Now, it is 2015 and the module has not been maintained since 2009. It just started failing its own test suite because the year changed over to 2015.
In new code, you should consider modern alternatives, like DateTime.
Dave Rolsky wrote on 2003-08-13 13:56:27:
The interface is rather awkward, as multiple operations require
you to sling around many parameters, because the functions return
list of values (like year, month, day) which you have to track.
The reason for this is that it makes one-liners such as this possible:
sub Mktime # in: year,month,day,hour,min,sec out: secs since epoch
Well, it got the job done. So I give it 5 stars for that. The documentation had enough examples for me to quickly figure out what I needed to do.
This module is fast to load and easy to use.
I normally inherit Date::Calc::Object into a wrapper.
The interface is indeed odd, but you do get used to it rather quickly. And the module does what it set out to do. I use it a lot, but I do not use it exclusively, so it's worth checking out the competition.
I find this module difficult and awkward to use sometimes, but it is very useful and fast.
This module does most of what I need, and it isn't terrible at it. It's just strange. It has a somewhat clunky interface (Nth_Weekday_of_Month_Year is too long for a sub name) and often strikes me as providing strange ways of solving its problems. Hopefully DateTime will obsolete Date::Calc.
This module is good at what it does, but it might not do everything you need (timezones, for example). The interface is rather awkward, as multiple operations require you to sling around many parameters, because the functions return list of values (like year, month, day) which you have to track.
The docs for the main portion of the code, Date::Calc, are complete and relatively easy to read, but the docs for Date::Calc::Object are somewhat confusing.
Fast and useful module. I really like that it does not try impose
a slow OO interface on stuff that does not need it. I would have
liked it even better if the function names did not upcase each word
and if the synopsis section of the documentation was shorter.