[Catalyst] Why does $c->stats require -Debug flag?

Ashley apv at sedition.com
Thu Apr 24 17:11:21 BST 2008


On Apr 24, 2008, at 2:49 AM, Jon Schutz wrote:
>> Basically it's more of a "zeitgeist" than an actual document.   
>> There are
>> some things that the community has decided and "just do".  One is not
>> breaking things or adding features between point releases.  We've  
>> fucked
>> this up a number of times, but that doesn't really matter, the  
>> point is
>> we try to fix our mistakes.  Compare this to other frameworks that  
>> just
>> break things and say "fuck you".
>
> A "standard" is not a standard unless it's written down as a common
> reference for everybody to see.  People in the community come and  
> go and
> don't all have the same history, or longevity of memory for all the
> "let's make this a standard" decisions that happen along the way.   
> This
> is perhaps getting close to the crux of the problem.  Clearly Matt and
> I, and you it seems, have a different concept of what the  
> "standard" is.
>
> Is there someone out there, then, with the right background, to set  
> up a
> Wiki page and document this zeitgeist?

The leading underscore means "private" implicitly says no leading
underscore means "public." Just as a "No Swimming at Night" sign
implies swimming during the day is allowed.

Most of what Matt's talking about is etiquette. Unless something is  
clearly
labeled "alpha" or "beta, interface subject to change," it's just not  
okay
to change an interface, hence backwards compatibility/support for at  
least
the immediate, announced future. This seems an open-source-wide
convention, not just Perl.

Of course anyone can do whatever he wants with his code but breaking
conventions (and this is a common sense one) won't make any friends
and doing it enough will lead to abandonment or getting one's code
forked away. I haven't used the stats stuff though it looks interesting,
but I personally would immediately drop any package that went through
an undocumented, unannounced interface change defended as personal  
style.

Using AUTOLOAD when you know your methods/subs up front is a
pointless complication and performance hit.

-Ashley



More information about the Catalyst mailing list