January 10th, 2005

diesel, learning, evil, sweeti


A Module::Pluggable::Fast appeared on the scene - which purports to do immediate instantiation which is needed for Class::DBI::Loaders.

To be honest I'm not sure what to feel about this. Flattered in one way but I think the features he wants could have been rolled into Module::Pluggable.

It would have been nice to have a mail either way.

I used the opportunity to do some nice speed ups to Module::Pluggable and I'm thinking of hacking in immediate instantiating just to be spiteful ;)

I've also been thinking of spinning off the code that will tell you all the inner namespaces in any given namespace. I just want to make sure that I'm not doing bad things and that nobody else has done the same.

diesel, learning, evil, sweeti


dipsy is #london.pm's infobot. She's, err, unique.

Yesterday I got fed up with dipsy saying

    14:09 <@muttley> change 140 USD into GPB
    14:09 <+dipsy> exchange.pl: site scraping removed by request

and fixed the exchange.pl to use Finance::Currency::Convert::XE. I also added a convert.pl which co-opts the convert keyword, previously a synonym for (ex?)change, and uses Math::Units to convert between various formats. You can now do

    18:14 <muttley> convert 1 m into miles
    18:14 <dipsy> 1 m is 0.000621371192237334 miles
    18:14 <muttley> convert 1 min to seconds
    18:14 <dipsy> 1 min is 60 seconds


    18:14 <muttley> convert 1 gallon into cm^3
    18:14 <dipsy> 1 gallon is 3785.411784 cm^3

and even

    18:13 <muttley> convert 100 hz into rpm
    18:13 <dipsy> 100 hz is 6000 rpm

Which is cool. (The diff to Extras.pl is here).

This morning I also stole a feature from Tom Insam's mind bot based on his Bot::BasicBot::Pluggable and URI::Title modules and hacked in URI titling :

    10:32 <muttley> http://thegestalt.org/simon
    10:32 <dipsy>  [ L a u n c h p a d ] 
    10:33 <muttley> http://london.pm.org
    10:33 <dipsy>  [ London.pm - London Perl Mongers ] 

I still harbour plans to convert dipsy over to Bot::BasicBot::Pluggable.

But that's for another day.