in reply to Appropriate amount of abstraction
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.
|
|---|