On Tue, 20 Aug 2002, at 12:37pm, Derek D. Martin wrote:

[ Several paragraphs of completely irrelevant and bogus argument deleted.  
  I will provide explicit debunking of said argument if so requested. ]

> There are very few Unix commands whose names are completely
> unintelligible, and learning them is much easier than learning the
> difference between $^P and $^B.  At least for me, and I suspect most
> people.

[ ... snip ... ]

> Perhaps.  But I have a very good grasp of regexp and that's definitely
> not what *I* am talking about.

  Okay, so, you have no trouble understanding the Unix environment, which is
inconsistent, obscure, and cryptic.  You have no trouble with regular
expressions, which have, arguably, the most cryptic syntax of any popular
language construct, ever.

  Yet you complain about Perl being hard to learn and use, for the same
reasons, and not just for you, but for everyone?  That does not add up.  Is
Perl cryptic?  Sure.  So are many other things which *you have no problem
with*, which was my point.

  I am willing to bet, dollars to donuts, that the real reason you find Unix
"easy" while Perl is "hard" is that you use Unix every day, day in, and day
out, while Perl is something you only dabble in.  Of course, I cannot prove
that assertion, but I ask you consider it as objectively as you can (if that
is not a complete logical impossibility, which I rather suspect it is).

On Tue, 20 Aug 2002, at 3:01pm, Derek D. Martin wrote:
>  - Perl "grew" rather than being designed.  Its syntax is a
>  mish-mash of features from several other languages and/or utilities
>  all glued together, and as such sometimes seems to be inconsistent
>  with itself.

  Agreed.  But, again, Unix is the same way, and so is MS-Windows, yet we
have no problem telling people they can/should learn those.  Why does Perl
get singled out?

>  - Perl does some things which are commonly done in programming
>    languages very, very differently from the rest

  True, but irrelevant.  Compare Python, C, and Scheme, and you'll get a far
bigger diff.  All programming languages are different.

> - Perl has a lot of obscure features and syntax, like the so-called
>  "magic" variables, that don't lend themselves to readable code

  Marginal.

  Mechanisms are in place to eliminate the magic variable problem, because
said magic variables are recognized as cryptic.  What I find more telling is
that, at least in my experience, few of those magic variables are needed in
practice.  I certainly rarely use them.

  It is like complaining about trigraphs in C.  Yes, they are obscure and
cryptic, but nobody uses them, so who cares?

  Can you give an example of anything *other* than the magic variable
problem?  I am starting to think you're just hung up on magic variables, the
way some people get wedged on whitespace in Python.

> - The people who write Perl by and large seem to prefer a style (if
> you can call it that) that promotes neither code readability nor
> education

  Can you back that up with any kind of real evidence?

  My personal theory on this is a bit different.  There are people who like
to write dense, terse, cryptic code.  Perl, being the flexible beast that it
is, lets those people do that to the extreme.  So those people tend to
gravitate to Perl.  You see a lot more such code written in Perl, because
Perl is the best tool to do it in -- a dubious distinction, I'll agree.

  However, just because there are a large number of hacks writing line-noise
in Perl doesn't mean every Perl coder on the planet does it.  I certainly
don't find much of that stuff in the Camel books, other than deliberate
instances of it.

> For all its wiz-bang features that make many tasks which are difficult on
> other languages much easier in perl, it lacks the ability to easily
> manipulate data structures ...

  True, and a recognized problem, and one that is being worked on in Perl 6.  
However, I don't think anyone was suggesting that Perl is the universal fix
to all programming problems.  Perl excels at munching text, working with
dynamic lists of flat data, and associative lookups (among other things).  
The tasks Perl does well are all tasks done frequently in computer programs
as well.

> But many of the features of Perl compound [the problem of reading other
> people's code], making for naturally ugly code.

  I find that Perl often leads to naturally elegant code, when used
properly.  I have to wonder if your problem is just that you hang around too
many lousy Perl hackers.  :-)

-- 
Ben Scott <[EMAIL PROTECTED]>
| The opinions expressed in this message are those of the author and do not |
| necessarily represent the views or policy of any other person, entity or  |
| organization.  All information is provided without warranty of any kind.  |

_______________________________________________
gnhlug-discuss mailing list
[EMAIL PROTECTED]
http://mail.gnhlug.org/mailman/listinfo/gnhlug-discuss

Reply via email to