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

Re^2: An Apology for Puncish

by rir (Vicar)
on Jan 28, 2009 at 19:24 UTC ( #739680=note: print w/replies, xml ) Need Help??

in reply to Re: An Apology for Puncish
in thread An Apology for Puncish

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

Replies are listed 'Best First'.
Re^3: An Apology for Puncish
by BrowserUk (Pope) on Jan 28, 2009 at 22:12 UTC
    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?

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

How do I use this? | Other CB clients
Other Users?
Others avoiding work at the Monastery: (6)
As of 2020-02-25 19:29 GMT
Find Nodes?
    Voting Booth?
    What numbers are you going to focus on primarily in 2020?

    Results (113 votes). Check out past polls.