DrBacchus writes "During TPC, with the help of the other fine folks on the Reefknot team, I released several new versions of Date::ICal. We're currently on version 1.23.
Date::ICal is a module that handles ICalendar date/time objects, and forms the basis for some of the modules in the Net::ICal namespace."
In addition to being part of Reefknot, Date::ICal is part of my nefarious scheme of world domination by better date/time modules. The idea is to have a module (I really don't care if it is this one, or some other one) from which other date/time/calendar modules could inherit. This would have two effects. We'd have a common interface to date objects, no matter what calendar we were in. And converting from one calendar to another would be trivial.
Date::ISO is a subclass of Date::ICal, and is the first of my proof-of-concept modules inheriting from Date::ICal. Date::Discordian should be a Date::ICal subclass by the end of the week.
If you're interested in Date/Time stuff in Perl, join the datetime@perl.org mailing list (see lists.perl.org for more information) and check out Reefknot
To elaborate further on DrBacchus's comments above: Reefknot is a project to build tools for standards-compatible shared calendaring in Perl. Clients, servers, standalone gadgets, whatever--- we're building tools to do all of these things. The standard we're using is iCalendar, RFC2445, which is the same common protocol used by Evolution, MS Exchange, Lotus, and iPlanet Calendar Server. Join the reefknot-devel mailing list (linked from the Reefknot homepage) if you want to find out more.
You probably want to check out the Net::ICal module from CPAN--- we released version 0.14 last week, which is a developer's alpha release.