Beefy Boxes and Bandwidth Generously Provided by pair Networks
Syntactic Confectionery Delight
 
PerlMonks  

Re: 20 most important Perl Best Practices

by BrowserUk (Pope)
on Aug 22, 2012 at 18:32 UTC ( #989116=note: print w/ replies, xml ) Need Help??


in reply to 20 most important Perl Best Practices

My advise to you is give up Perl and take up Java.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.

The start of some sanity?


Comment on Re: 20 most important Perl Best Practices
Re^2: 20 most important Perl Best Practices
by greengaroo (Hermit) on Aug 22, 2012 at 19:16 UTC

    Well, my post is not about debating programming languages, plus I make a very good living out of Perl programming and I am not remotely close to switching to something else. But thanks anyway!

    Take my advice. I don't use it anyway.

      Your list is nothing more than yet-another-arbitrary-and-capricious-ruleset that uses thin justifictions to imbibe your personal preferences with theocratic status. Yet another list that doesn't correspond with anyone elses arbitrary list. Another set of arbitrary rules that will confuse newbies and frustrate the experienced coming from other places where different arbitrary lists were in force.

      There is only one definitive list -- it's called Perl.

      You are second guessing the heralded and qualified language designer to come up with some subset of the defined language on the basis of what qualification?

      Even where you agree with the language designer in one place -- lower-case and underscores -- you later contradict him -- and yourself -- with "only CamelCase". This is both capricious, and more damning, inconsistent.

      Your rules appear to be aimed to favour restricting and emphasising the linguistic elements of the language, rather than the structure of the algorithm, which is the completely wrong thing to be doing. The language's syntax is already very constrained and well documented. Whether those completely new to programming, or those migrating in from other languages, learning Perl syntax is just a matter of exposure.

      What all programmers should be doing when writing their code, is trying to capture the essence of the variable part of their programs -- the algorithms -- in as clear and concise manner as possible. And perl's full syntactic richness is expressly designed to allow that to be done.

      By placing arbitrary restrictions on that syntactic richness, you do not make it easier to read the code, because the inevitable affect is to force the programmer to use more verbose code to capture the essence of the important part of the source code -- the algorithms.

      With many of your proposed restrictions, you are effectively converting a 4GL to a 3GL with all the loss in productivity that implies.

      See also Re: What is code readability? and follow-on discussion for specific counter example to some of your justifictions.


      With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
      Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
      "Science is about questioning the status quo. Questioning authority".
      In the absence of evidence, opinion is indistinguishable from prejudice.

      The start of some sanity?

        OK, I understand your point. Now that I think about it, after reading your post and some others bellow, I realize that I am not really achieving my real goal: Helping less experienced Perl developers avoid pitfalls that would lead to hard to understand issues.

        I have to rethink my approach. Thank you very much for opening my eyes!

        Take my advice. I don't use it anyway.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://989116]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (10)
As of 2014-07-30 07:19 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (229 votes), past polls