the problem he has with Perl OOP is that he doesn't trust that other programmers will do it right. His point is that Perl's permissiveness makes it too easy for less-than-expert programmers to weaken the "available software"

I think this problem area is - at least tangentially - adressed by Larry Wall in his "Apocalypse 12" for Perl6,

Some of the Problems with Perl 5 OO
A little too orthogonal

It has often been claimed that Perl 5 OO was "bolted on", but that's inaccurate. It was "bolted through", at right angles to all other reference types, such that any reference could be blessed into being an object. That's way cool, but it's often a little too cool.

The "orthogonality" (or TMTOWTDIbility) of Perl is seldom a problem in smaller programming shops with a highly qualified & focused development team dealing in relatively small dedicated systems.

It can easily develop into a problem (i imagine - i have no practical experience with Perl here) in an enterprise development scenario with a big and complex bulk of legacy code and a "normal distribution" of programming skills. In this scenario good OOP language and business component frameworks (Java, C#) have proven to be a big boost for productivity & quality when "programming in the large".

In many ways Perl5 is like C in that it gives you "enough rope to shoot yourself in the foot" (as Stroustrup has once put it), and that you'll thus have to setup some company standards for coding, documentation etc. in any large it-shop so ensure smooth maintenance and cross human portability.

From what i've seen of Perl6, the OO support will be integrated into the language in a much cleaner and "best of practice" way, which should help position Perl as a better candidate for "programming in the large".

As the eternal tranquility of Truth reveals itself to us, this very place is the Land of Lotuses
-- Hakuin Ekaku Zenji

In reply to Re: TMTOWTDI... and most of them are wrong by ady
in thread TMTOWTDI... and most of them are wrong by tlm

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, 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, 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.