This isn't really a question, more like a comment and an "Anyone else noticed this?" I'm hoping that someone will be able to confirm and/or comment.

After a fair bit of grinding through log files recently, I discovered that one of my scripts was quietly dying because I'd used the right method on the wrong object. So after thinking about Schwern's rant about AUTOLOAD from YAPC 19100's Lightning Talks, I tried the following code:

sub AUTOLOAD { our $AUTOLOAD; return if ( $AUTOLOAD =~ /DESTROY$/ ); # No problem with that. $logger->warn("Tried to call $AUTOLOAD."); }

The objective was that if anything called the right method on the wrong object, AUTOLOAD would catch it. Note that I don't do anything rash if the method ends in DESTROY, but the current development push is over, I'm going to change 'warn' to 'die' and really stress test the system to see if I can find out what causes these quiet deaths.

I'd be interested in hearing if anyone else has noticed this or tried it.

Alex / talexb / Toronto

Life is short: get busy!


In reply to How many ways are there to use AUTOLOAD? by talexb

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.