Beefy Boxes and Bandwidth Generously Provided by pair Networks
laziness, impatience, and hubris
 
PerlMonks  

Re: An Apology for Puncish

by talexb (Canon)
on Jan 28, 2009 at 18:03 UTC ( #739660=note: print w/ replies, xml ) Need Help??


in reply to An Apology for Puncish

Another way of putting it is that Perl defaults to an 'Expert' mode, but you can dial that back a little using English to make things a little more readable. But BrowserUK has nailed it with the comment that abbreviations are commonly used in a variety of fields -- music is an excellent example of that; it's why I know so many Italian adverbs. ;)

Alex / talexb / Toronto

"Groklaw is the open-source mentality applied to legal research" ~ Linus Torvalds


Comment on Re: An Apology for Puncish
Download Code
Re^2: An Apology for Puncish
by rir (Vicar) on Jan 28, 2009 at 19:24 UTC
    That is saying something completely different. My contention is that to the uninformed
    • @+ and $LAST_MATCH_END
    • $? and $CHILD_ERROR
    • $^C and $COMPILING
    • $^T and $BASETIME
    • $^I and $INPLACE_EDIT
    • $" and $LIST_SEPARATOR
    are all obscure. If you don't know that Perl has a list separator concept, the name $LIST_SEPARATOR leaves you to look everywhere for its meaning. I would not know $^I's meaning, but by understanding the naming convention, I know it is a token defined in perlvar; in some cases that may be enough to guess/remember its meaning because I don't need to consider concepts that come from the
    • problem, -- is $LIST_SEPARATOR part of user output
    • general programming, -- or is it about a data structure
    • host system, -- or is it about porting
    • or a specialty domain. -- or a bit of arcana from some lib

    Be well
    rir

      If you don't know that Perl has a list separator concept, the name $LIST_SEPARATOR leaves you to look everywhere for its meaning.

      It's actually worse than that, because of what I referred to above as 'term overloading'. For example, Haskell has the concept of 'list separator', but the new book takes great care to point out that:

      Commas are separators, not terminators

      Some languages permit the last element in a list to be followed by an optional trailing comma before a closing bracket, but Haskell doesn't allow this.

      It's a minor example, but shows that by using the english versions it may induce assumed understanding in the reader due to term overloaading.

      The symbolic versions do not suffer from this. Someone encountering $" for the first time will not make the same assumptions and will have to look it up in the documentation. Which is a Good Thing.


      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.

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others romping around the Monastery: (6)
As of 2014-08-21 03:17 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The best computer themed movie is:











    Results (127 votes), past polls