I want to second BrowserUk's point about OO vs. speed. One of the central strategies behind OO is indirection, often multiple levels of it. The idea is that by introducing levels of indirection one decouples various parts of a program.

For instance, the use of accessors introduces one level of indirection, because instead of accessing the data "directly" (through, say, $obj->{ field }), one accesses it "indirectly" by calling $obj->field which in turn accesses $obj->{ field }. This trick decouples all the parts of the program that access this data from the parts of the program that implement the storage and management of the data, so that the latter can be altered, possibly radically, without this having any effect on the code for the former. (I see the accessor is being something reminiscent of a "hinge" between two parts of the code.)

Once you grok this indirection business, you'll see it at work everywhere, and in many guises, even in code that is otherwise not terribly OO.

This decoupling greatly eases the task of maintaining code, but it comes at a price performance-wise. I see this tension as being obviously fundamental (i.e. unresolvable), although I have found people who reject this view. tilly sparked a very interesting exchange on this subject recently; see also this.

the lowliest monk


In reply to Re: Which, if any, is faster? by tlm
in thread Which, if any, is faster? by rvosa

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.