It depends on your reasons for programming in Perl.

If your aim is to get a job done quickly and efficiently, and have working code ASAP, then the higher level you can code at the more likely you are to meet your goals. In this respect being a Maypole, ColdFusion, FrontPage or even a Excel programmer is about achieving the end goal--the website or 3D-bar chart etc.--with as little effort on 'extraneous' tasks, like dealing with cookies or making sure that your floating point math can handle the numbers you are manipulating with the required accuracy. You want to concentrate on the Business logic of the task, not Perl's esoteria.

However, if your goal is to be able to write a better Maypole or a command/data-driven charting application, then you need to work at the lower level.

There is also the school of thought that says that knowing how stuff works at the lower levels, allows you to use the higher level abstractions more effectively. It can stop you from building slow and memory hungry, houses of cards, by combining too many, incompatible, high level abstractions into a single app.

I am of this latter school of thought, but tempered with the reality that getting the job done often takes priority over getting the job done perfectly.


Examine what is said, not who speaks.
"Efficiency is intelligent laziness." -David Dunham
"Think for yourself!" - Abigail        "Time is a poor substitute for thought"--theorbtwo
"Memory, processor, disk in that order on the hardware side. Algorithm, algorithm, algorithm on the code side." - tachyon

In reply to Re: Appropriate amount of abstraction by BrowserUk
in thread Appropriate amount of abstraction by gunzip

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.