On Mon, 13 Jan 2003, Matthew Simon Cavalletto wrote: > What's the benefit of making this distinction between core and "other" > formats? Because "core" parsing would be available simply by doing: use DateTime; That's about it. > Why not define a parser interface and include the basic formats as > modules in the main distribution? What distro it's in is not the issue. It's really a question of whether or not users must load another module to do parsing, that's all. > This type of design should encourage separation of concerns, and help > to avoid monolithic implementations -- the current DateTime::new sub is > over 100 lines long... The overhead of one more method call seems like It's over 100 lines cause it needs refactoring. That's on my todo list. > my $dt = DateTime->new( ICal => '20030113' ); > > # Causes DateTime to load the ICal format module and request that > # it parse the data and return it in a standard numeric form. > # Equivalent to the following: > require DateTime::Format::ICal; > my $dt = DateTime->new( rd_sec => > DateTime::Format::ICal->parse_into_ratadie_and_seconds('20030113') > ); Actually, I have some ideas for this. Something like: use DateTime; use DateTime::Parse::MySQL; my $dt = DateTime->from_mysql_datetime( $mysql_dt ); So the parsing modules would just add methods to the DateTime namespace. -dave /*======================= House Absolute Consulting www.houseabsolute.com =======================*/Thread Previous | Thread Next