[13125] in Perl-Users-Digest

home help back first fref pref prev next nref lref last post

Perl-Users Digest, Issue: 535 Volume: 9

daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Sun Aug 15 01:17:10 1999

Date: Sat, 14 Aug 1999 22:10:10 -0700 (PDT)
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)

Perl-Users Digest           Sat, 14 Aug 1999     Volume: 9 Number: 535

Today's topics:
    Re: Why use Perl when we've got Python?! (Sam Holden)
    Re: Why use Perl when we've got Python?! (Abigail)
    Re: Why use Perl when we've got Python?! (Alan Barclay)
    Re: Why use Perl when we've got Python?! <tchrist@mox.perl.com>
    Re: Why use Perl when we've got Python?! (Abigail)
    Re: Why use Perl when we've got Python?! <tchrist@mox.perl.com>
    Re: Why use Perl when we've got Python?! (Phil Goetz)
    Re: Why use Python when we've got Perl? (I R A Darth Aggie)
    Re: Why use Python when we've got Perl? <tchrist@mox.perl.com>
    Re: Why use Python when we've got Perl? (Mike Kozlowski)
        Digest Administrivia (Last modified: 1 Jul 99) (Perl-Users-Digest Admin)

----------------------------------------------------------------------

Date: 15 Aug 1999 03:09:30 GMT
From: sholden@pgrad.cs.usyd.edu.au (Sam Holden)
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <slrn7rcbs7.rsf.sholden@pgrad.cs.usyd.edu.au>

On Sat, 14 Aug 1999 14:57:21 GMT,
    John Stevens <jstevens@bamboo.verinet.com> wrote:
>On 14 Aug 1999 03:36:23 GMT, Sam Holden <sholden@pgrad.cs.usyd.edu.au> wrote:

>Your example included:
>
>@array = (1,10,20,30);
>$from_list = (1,10,20,30);
>$from_array = @array;
>print "$from_list\n$from_array\n";
>
>The line you specify does not contain a list, it contains a
>tuple.
>
>>No you can't.  Is there an array in that line of code?
>
>No, and that isn't a list, even if you call it one.  It is a tuple.
>
>>No. Is there a list
>>in that line of code?
>
>No, it's a tuple, not a list.

You can play semantic games all you like, here's the only definition of
a tuple that I could find :

tuple :
In functional languages, a data object containing two or more
components. Also known as a product type or pair, triple, quad, etc.
Tuples of different sizes have different types, in contrast to lists
where the type is independent of the length. The components of a tuple
may be of different types whereas all elements of a list have the same
type. Examples of tuples in Haskell notation are (1,2), ("Tuple",True),
(w,(x,y),z). The degenerate tuple with zero components, written (), is
known as the unit type since it has only one possible value which is
also written ().

Sorry perl's lists are not tuples. Since they can only store values of
one type - scalars. You can't have a list of lists (sorry tuple of tuples),
only a list of scalar refernces to a lists (sorry tuple of scalar references
to tuples).

Perl uses the word list. The word list has many more meanings in the English
language than the Mathematics definition I'm sorry. Perl uses a different
meaning than you like, go and take it up with whoever publishes your
dictionary.

>Go ahead, show me a variable that contains a list.  In your
>example:

Did you read my post. Particularly the bit in which I said you can't have
a list in a a variable. Anyway I give up - learn how to read, and accept
that perl uses the work list differently than python.

>
>$from_list = (1,10,20,30);
>
>$from_list isn't a list.
>
>>Again I repeat, here is a perl list : ('a', 'b', 'c') or qw(a b c)
>
>Again, you are wrong.  The construct ('a', 'b', 'c') is a tuple.
>Perl'ers may call it a list, but how do you perform a an insert
>on the above?

Strangely enough perl didn't involve in an ivory tower. It isn't meant to
be a 'pure' language, it doesn't have lots of 'theory' behind it. Here's a good
definition of a list that the paper boy will tell you is a list :

list n 1: a database containing an ordered array of items (names or
topics) [syn: listing] 2: the property possessed by a line or surface
that departs from the vertical; "the tower had a pronounced tilt";
"the ship developed a list to starboard"; "he walked with a heavy
inclination to the right" [syn: tilt, inclination, lean, leaning] v
1: give or make a list of; name individually; give the names of 2:
include in a list 3: give the names of; "Name the states west of the
Mississippi!" [syn: name] 4: enumerate; "We must number the names of the
great mathematicians" [syn: number]

no mention of operations there. When I ask for a list of birthdays, I don't
want something I can insert into, or delete from. I want a bunch of dates
written on a peice of paper. Feel free to ask for a tuple of birthdays, I'll
stick you common English though thanks.

>
>You don't.  You copy the contents of your tuple into an array,
>then perform array operations on that array.
>
>>>I know Perl.  You need to learn Python.
>>
>>Did I mention a single bit of python syntax in my post? No. 
>
>So what?  I can still make a comment.  And if you had been
>paying attention, you would have realized the context of this
>thread.

And if you read my post you would have realised I avoided comparing perl
and python in any way.

>
>>What was the point of saying I need to learn Python?
>
>Because, in the words of TC, "Learning is a good thing".
>
>More specifically, had you studied Python, it would have been
>clear that what Perl calls a list is more properly refered to
>as a tuple.

I agree with you. An earlier post by TomC specifically said that. Perl
calls them lists, thus they are lists. If Perl called them Hamburgers then
they would be hamburgers. Of course that would make perl harder to talk
about and to understand from the documentation.

Show a bunch of people the following (try paper boys, programmers,
mathematicians, etc) :

1,2,3,4,5,6,7,8,9

Ask them what it is.

I bet more people say a 'list' than say a tuple.

Perl didn't come from an ivory tower, it uses English words for their 
English meanings a lot. You don't like that, fine, just don't argue perl
doesn't have lists when you know it does. 

If you had said "perl doesn't have lists, what it calls lists are really
tuples', I would have answered with aomething like the above. I misunderstood
and thought that you thought arrays and lists where exactly equivalent in perl.
That is a common mistake in perl, that people who make the mistakes that you
have made with perl code in this thread make. People who struggle with
using @ where they mean $ and {} where they mean (), etc tend to be
misunderstanding the basic data structures perl provides.

I made a mistake, I can admit that.

I do have a feeling that you knew I was and kept going anyway because you
like to argue about stupid pointless things.

>
>>You might as well have told me to learn C or Lisp.
>
>Yes.  You should.  Had you learned Lisp, list processing would
>be second nature to you, and you would have a clearer idea between
>"lists" and "tuples" and "arrays".

In fact I have. But the meaning of 'list' when talking about perl is whatever 
perl calls a list. Ignore it all you want. You must get misunderstood a lot.

>
>Stop.  You are talking about arrays, not lists.  I repeat, if
>@ary were a list, the above operation would be illegal.

But @ denotes an array and you know this. 

>
>>Of course you know better then perl itself.
>
>In this case, I would say that Perl should use the same terminology
>as other fields of study.  So, yes, I would consider that Perl
>makes a mistake, calling this a list.

That's fine, your allowed to disagree with the terminology. but since you
in all likelyhood knew what I meant anyway you have just been playing games.


*plonk*

-- 
Sam

I explicitly give people the freedom not to use Perl, just as God gives
people the freedom to go to the devil if they so choose.
	--Larry Wall


------------------------------

Date: 14 Aug 1999 23:09:03 -0500
From: abigail@delanet.com (Abigail)
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <slrn7rcfco.a5.abigail@alexandra.delanet.com>

John Stevens (jstevens@bamboo.verinet.com) wrote on MMCLXXIV September
MCMXCIII in <URL:news:slrn7rbf0f.sgr.jstevens@bamboo.verinet.com>:
## On 14 Aug 1999 02:57:08 -0400, Uri Guttman <uri@sysarch.com> wrote:
## >>>>>> "JS" == John Stevens <jstevens@bamboo.verinet.com> writes:
## >  JS> Thank you.  I will.  Perl cannot be used without manuals.
## >
## >neither can python.
## 
## This statement has some validity, but is not entirely true.  I can
## and do write Python without refering to manuals.


And I write Perl without using the manuals. I won't be able to write
Python without using the manuals. The fact *you* cannot use Perl without
the manuals, and *you* can use Python without the manual says something
about *you*, and nothing at all about Python, Perl or chocolate covered
cockroaches.

## About 10% of the Python I write uses nothing more than standard
## python.

About 90% of the Perl I write uses nothing more than standard Perl.
What's your point? That core-Python is pretty useless, and that for
90% of what you do, core-Python is insufficient?

## >this book is not a manual, but a study in how to
## >write OO perl and do all the stuff other OO languages can and more. OO
## >perl can do stuff very few if any other languages can handle.
## 
## Yes.  As I said, it is powerful.  Just confusing, due to its
## lack of common key words.

Except for some syntactically details, Perls OO and Pythons OO are
basically the same (which isn't very surprisingly, as Larry copied
Pythons OO model to implements Perls). Anyone claiming they are different,
doesn't understand at least one of the languages.

## Ada programmers are not allergic to seeing "package" or "module" and
## thinking "class", but most people have to take a second look.
## 
## >  JS> My primary complaint re: OO-Perl, is the lack of "expected"
## >  JS> keywords and OO syntax.
## >
## >what is expected keywords?
## 
## Almost every OO language uses the word: "class".

Oh, I see. You're upset because Perl lacks "class", but does have
"package". How long did it take you to get over the fact Python doesn't
have sprintf, but an infix operator for that functionality?  Or do you
still wake up screaming about that?

## 
## >there are only a couple of things that make
## >perl oo: creating a reference, bless, @ISA for inheritance and the
## >direct method call $obj->method. can't get much simpler syntax that
## >that. don't need no steenkin keywords!
## 
## It needs the keywords to communicate intent with the reader.
## 
## >not really. you haven't tried hard enough.
## 
## ;->
## 
## Right.  Why doesn't anybody every question whether or not it
## should be that hard?
## 
## Note: I teach OO programming courses.  In the past, I've used
## Perl as one of the languages I use to teach OO.  After exposing
## the class to Python,
## I give them an hour to create their first Python class.
## They almost all, always, get the assignment done in less than an
## hour.
## 
## After showing them the Perl way, I let them have a full day.
## 
## And, on the average, 1 in 4 cannot finish the assignment
## at all.
## 
## It is more difficult to learn to do OO in Perl.

No. It just means you're a lousy and biased teacher.

## >i have written dozens of programs both OO and not in many
## >languages including assembler. OO is an attitude abotu organizing you
## >data and code.
## 
## No.  It is not just that.  Have you ever had any formal OO training?

Define "formal OO training". What the fsck is that?

## >it is not a stricture requiring you do use keywords and
## >crap like that.
## 
## Keywords are crap?
## 
## There is an OO term: polymorphism.  It means: the same things
## should be said in the same way.  An example of polymorphism
## is the use of the + keyword to indicate both integer and
## floating point addition.

Another example is that you use both "1" and 1 to indicate the 
number 1. And a better example would be to make *no* difference
between integers and floating points at all.

The use for "+" to do both numerical addition and string concatenation
isn't polymorphism in the way you defined it above. Because it's using
the same thing to do _different_ things.

## Encapsulation is not the sum total of OO.  In fact, if all you do
## is encapsulation, you are not doing OO.  The bare minimum requirement
## for OO is encapsulation, inheritance, messaging and support for
## subclass responsibility.

Don't forget hype. A key ingredient of OO is hype. Some FUD about any
language you don't like is useful as well.

## >i chose the time and place for oo since i know how to do both. forcing
## >it on newbies is a crime as they will have a hard time going without
## >it.
## 
## Excuse?  Why would teaching OO to newbies be a crime?

Unless in your mindset "forcing" and "teaching" are equivalent, I do not
understand your point.

## >it's just like event programming is very difficult for most coders
## >who have just done procedural for their careers. "who calls my event
## >subs?" they ask. well oo slaves will say, "what is a global?" and "how do
## >you share data?"
## 
## An OO trained programmer will not ask questions like:

You must mean, "a mindless programmer will not ask such questions".

## "What is a global?".  They'll ask: why are you using such a poor design?

Then they are bad programmers. They should learn to think.

## They will not ask: "How do you share data?", they'll ask: "What are
## you going to do about this in maintenance?"

Then they are bad programmers. They should learn to think.

## >  JS> I have my own guidelines, ones that I teach when I teach OO, but I
## >  JS> am curious as to where other people draw the line.
## >
## >at python and java and c++.
## 
## Again, OO is a paradigm, not a language.  You can do
## OO in ANSI C.

You haven't talked about any OO paradigms in your postings. You talk about
OO in dogmas, not paradigms.

## >  JS> And, in point of fact, those earlier methodologies did indeed
## >  JS> reduce the number of bugs.
## >
## >not really, they just delayed them.
## 
## No, really.  They really did reduce defect rates.

Utterly rubbish. Bugs are the products of programmers, not of languages.

## >  JS> Yes, but OO is an improvement over previous methodologies.
## >
## >not true.
## >it is just another methodology, not an improvement.
## 
## Interesting assertion.  Do you have any reasons you'd care to share
## that suuport that assertion?

I haven't seen any proof that OO solves things previously unsolved.
I haven't seen any proof that OO makes things easier than before.
It's another methodology. Unless other methodologies, it has been
hyped and overrated in the 90s though.

## >  JS> It lowers the bar, allowing less talented programmers to design,
## >  JS> write and maintain more complex systems.
## >
## >let's see. cpan is full of modules, many of which use OO perl. it is
## >massive, shared and growing rapdily.
## 
## Now, if OO is not an improvement. . . then why introduce OO into
## Perl?

Choice.

## >maybe
## >the pseudo-barrier of perl's syntax just filters out the chaff and so the
## >perl community is just a smarter and more skilled one.
## 
## And TC says that Perl encourages stupid people to use it . . .

And you say stupid people should use Python.

## Perhaps Perl simply attracts people who believe that learning
## something that is arbitrarily made difficult than it needs to be
## somehow proves that they are more intelligent than the average.

FUD. If Perl is too difficult for you, don't use it. Just don't
proclaim Perl is difficult, say "I'm too stupid".

## Or maybe it traps users, because after they've spent so much time
## becoming competent, they are loathe to waste that time and
## fall into the trap of throwing good money after bad.

There's nothing wrong with rich languages that take a long time to
master. It pays off. If you go to a carpenter, take a look at his toolset
- he won't be satisfied with just a hammer and a saw. Not because he can't
do this job with just a hammer and a saw, but a rich toolset allows him
to be more productive, do a better job, and feel more satisfied after.

## Or maybe it is simpler than that: maybe people are attracted
## to Perl because they are more comfortable being part of a
## large group, instead of a small group.

Then they would program in C, or in *gasp* Java, the most hyped
OO-language, right?

## >as for a comparison of the market size, just search for perl vs. python
## >on any jobs site and compare the numbers.
## 
## Actually, I hadn't mentioned market size at all.

No. But someone else just did.

## >it is not because perl is
## >a better language or whatever, it is because perl gets the job
## >done.
## 
## Your logic is flawed.  You have yet to show that Perl's
## characteristics have anything at all to do with the number
## of people that use it.

Good for you, otherwise, your language would be doomed, wouldn't it?
But think of it this way, if Python is so good, and Perl is such crap,
why is it that Perl is used so much more than Python? I mean, you can
teach Python to people in a few hours, and you don't need manuals, so
it isn't that people have to invest that much time to learn Python.

Tell us, why is it that more people use Perl than Python? It's not a
question *we* have to answer.

## An equally good case could be made, from the existing data, that
## Perl is so difficult to learn and use, that programmers use it
## to protect their jobs.

Sure. And the moon is made of cheese. NASA went never back to the moon
because they wanted it to keep a secret.

And there are millions of CGI programmers out there that use APL, just
to protect their jobs.

## And the high level of demand, may simply be a symptom of that.

How so? People want to hire *more* programmers that can't be replaced?
You'd say companies would hire Python programmers, as they can be
swapped for a spare one without problems. But companies keep asking for
Perl programmers. How come?

## And PL/1 did not support sub-class responsibility (feel free to correct
## me if I'm wrong).
## 
## Therefore PL/1 did not have language support for OO.

So?

## >so it was not the syntax but the
## >concepts that mattered.
## 
## Yes.
## 
## >so having a language which forces OO is not the
## >answer.
## 
## One could make the same argument re: procedural programming.

Indeed. Blessed are the languages that offer choice.

## >the tool is only as good as the craftsman
## >using it.
## 
## True.  But that does not extend to: "Therefore, all tools are
## equally good at all jobs".

Yep. And it doesn't extent to "Python is good. Perl is crap." either.

## >a master craftsman can do wonders with the simplest of tools
## >while an idiot couldn't make a good toothpick with a numerically
## >controlled milling machine.
## 
## Correct.  But a Master Craftsman will use the right tool for the
## right job, rather than forcing a screw driver to act as a chisel.

Yup. So, a master craftsman will take Perl as his tool kit, as Perl
offers him 5 kinds of screwdrivers in 23 sizes *and* 4 types of generic
chisels, in 15 sizes, plus 12 specialty chisels, for those hard to reach
places, while Python only gives him one tool to use.

Now, for your average joe who only has to hammer in a nail every odd
year, one tool is good enough. But guess which tool kit the master
craftsman will be using?

## >  JS> If that were the case (that only newbies find Python more
## >  JS> readable), you might be right (but only if you assume that the
## >  JS> ability to read and understand programs even if not a programmer
## >  JS> is useless).
## >
## >readibility of code depends on the skill of the coder much more than
## >the language.
## 
## No, it does not.

Yes it does.

## Readability has more to do with designing the language to be
## intuitive, than skill of the programmer.

Perl was designed to be intuitive, so there!

## The best Perl programmer in the world cannot make Perl readable
## to a non-programmer.  But well written Cobol can be read even
## by people that have never programmed.

Irrelevant. The best author can't make his English novels readable
for non-English speakers either, but does that make English a bad
language?

## >oo does not make that any easier or harder.
## 
## It makes it easier.
## 
## Which is easier?  Analyzing a program of 10,000 lines, or one
## that is 100 lines?

I think the one with 100 lines. Given that Perl typically uses way
less lines than equivalent programs written in other languages, are you
suggesting Perl isn't that bad at all? Or are you suggesting that you
need 10000 lines of non-OO code to do the equivalent of 100 lines of
OO-code? In that case, you're just a pathetic programmer.

## >it is
## >just another tool to be used when it is needed. you can have a beautiful
## >procedural api (some parts of the unix kernel is like that) or a messy
## >OO interface with no clarity of what method needs to be called or what
## >will really happen due to the complexity of the inheritance tree. my
## >point is that oo is as good as the coder. which is true for any
## >language/code pair. 
## 
## But not to the same degree.

Sure it is. An API is an API, and whether you write that as
     function (ADT, param, param)
or
     obj.method (param, param)

doesn't matter. The latter uses some syntax constructs though.

## >the same with python. it is a oo purist oriented language.
## 
## No, it isn't.  You can do procedural programming in Python.

And you can do OO programming in Perl. What's your point?

## >BTW perl has stacks, queues, and arrays and all that is needed is one
## >data type and one function, splice.
## 
## You haven't learned OO yet.  Nor have you learned how to control
## defect rates.  That one statement pretty much explains to me why
## Perl coders (if they think like you do) generate more defects, and
## why they are so hard to find.

Please come with some data, or stop your FUD. The only reason I think
of why there will be more bugs created in Perl is that it's very likely
that the number of bugs in Perl just dwarves the number of lines of code
written in Python, because hardly anyone wants to use Python; they all
turn to Perl.

## >just speedier shortcuts for common splice operations. perl's intrinsic
## >array allows multiple well defined operations which can be used to
## >emulate a variety of complex data structures.
## 
## Using an array as a stack is an inherent source of defects, and
## reduces the maintainability of the program.  The interface to
## a stack is not the same as an interface to an array, so when
## a maintainer inadvertently uses an array operation on a stack:
## 
## BOOM!  Defect.
## 
## If it's a stack, it should only allow stack operations (push, pop).

Of coures. That's why Python has a stack type, right? Oh, and don't go
waving a "stack" object written in Python to me, cause Pythons OO is
as broken as Perls, you still can get to the object instance variables,
and happely apply any operation on it that is allowed for that type.

I can see making a case for using OO to encapsulation data and methods.
That's a good thing. But then please do use a language that does so.
Don't use Perl. Don't use Python. Use Eiffel for instance.

## >so your taunt about push implying a stack is bogus.  the
## >fact that the name of an operation is push does not mean it is a
## >stack.
## 
## IOW, the word "push" should not have been used to define this
## operation.
## 
## Drastically reducing both the readability and maintainability
## of the code.

Why? You find readability for non-programmers a big issue. Don't you
think that "push" is a very good description for those who have
mastered English? It sure beats "+".



Abigail
-- 
sub camel (^#87=i@J&&&#]u'^^s]#'#={123{#}7890t[0.9]9@+*`"'***}A&&&}n2o}00}t324i;
h[{e **###{r{+P={**{e^^^#'#i@{r'^=^{l+{#}H***i[0.9]&@a5`"':&^;&^,*&^$43##@@####;
c}^^^&&&k}&&&}#=e*****[]}'r####'`=437*{#};::'1[0.9]2@43`"'*#==[[.{{],,,1278@#@);
print+((($llama=prototype'camel')=~y|+{#}$=^*&[0-9]i@:;`"',.| |d)&&$llama."\n");


  -----------== Posted via Newsfeeds.Com, Uncensored Usenet News ==----------
   http://www.newsfeeds.com       The Largest Usenet Servers in the World!
------== Over 73,000 Newsgroups - Including  Dedicated  Binaries Servers ==-----


------------------------------

Date: Sun, 15 Aug 1999 04:13:48 GMT
From: gorilla@elaine.drink.com (Alan Barclay)
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <934690657.250644@elaine.drink.com>

In article <7p2ckj$bb4$3@newshost.accu.uu.nl>,
Martijn Faassen <m.faassen@vet.uu.nl> wrote:
>Using both { and } and whitespace to mark block structure is redundant.

Redundancy is good in computer langauges. It allows cross checking of
the intended usage.

If I have some code which goes

if(){
	if(){
}
some code
}

Then even without any knowledge of the language, the problem or anything
else, I know there is something wrong. The indentation does not match
up with the brackets. If I rewrite this as:


if()
	if()
some code

Then there is now nothing to indicate that something is wrong. 

I personally gave up on python after wasting several hours trying to
find a bug caused by incorrect indentation.


------------------------------

Date: 14 Aug 1999 22:24:17 -0700
From: Tom Christiansen <tchrist@mox.perl.com>
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <37b640f1@cs.colorado.edu>

     [courtesy cc of this posting mailed to cited author]

In comp.lang.perl.misc, 
    gorilla@elaine.drink.com (Alan Barclay) writes:
:I personally gave up on python after wasting several hours trying to
:find a bug caused by incorrect indentation.

That's certainly a telling statement.

--tom

-- 
MAGIC*  xmg_magic;  /* linked list of magicalness */
    --Larry Wall, from sv.h in the v5.0 perl distribution


------------------------------

Date: 14 Aug 1999 23:32:12 -0500
From: abigail@delanet.com (Abigail)
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <slrn7rcgoc.a5.abigail@alexandra.delanet.com>

Tom Christiansen (tchrist@mox.perl.com) wrote on MMCLXXIII September
MCMXCIII in <URL:news:37b47e70@cs.colorado.edu>:
"" 
"" Well what else are you going to get?  BASIC programmers?  Now those
"" are clever folks for you!  Of course most programmers are C (or C++)
"" programmers.  It's the only real-world langauge that gets the jobs
"" done in millions of environments.  Every CompSci student should be
"" proficient at C/C++.

Really? I got my masters degree in CompSci without every writing a
single C statement, without ever reading a single book on C, or getting
any programming class in C. Don't forget Dijkstra's words: "Computer
Science is to programming as Astronomy is to telescope making". Astronomy
students are not expected to know how to create a telescope; they should
know how it works though.

""                       Anything else is fluff.  Beneficial, but fluff.
"" I don't care whether they're proficient at six other languages, and
"" in fact, I hope they know those six others, but C/C++ is what counts.
"" What kind of "programmers" are you talking about?

CompSci != programming. 



Abigail
-- 
perl -we '$@="\145\143\150\157\040\042\112\165\163\164\040\141\156\157\164".
             "\150\145\162\040\120\145\162\154\040\110\141\143\153\145\162".
             "\042\040\076\040\057\144\145\166\057\164\164\171";`$@`'


  -----------== Posted via Newsfeeds.Com, Uncensored Usenet News ==----------
   http://www.newsfeeds.com       The Largest Usenet Servers in the World!
------== Over 73,000 Newsgroups - Including  Dedicated  Binaries Servers ==-----


------------------------------

Date: 14 Aug 1999 22:34:58 -0700
From: Tom Christiansen <tchrist@mox.perl.com>
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <37b64372@cs.colorado.edu>

     [courtesy cc of this posting mailed to cited author]

In comp.lang.perl.misc, 
    abigail@delanet.com writes:
:Really? I got my masters degree in CompSci without every writing a
:single C statement, without ever reading a single book on C, or getting
:any programming class in C. 

And how 'bout a job? :-)

--tom
-- 
"Actually this is a common misconception...I do *not* in fact have a lot
of time on my hands at all! I just have a very very very very bad sense
of priorities."                                       -- Dean Engelhardt


------------------------------

Date: 15 Aug 1999 04:46:20 GMT
From: goetz@cse.buffalo.edu (Phil Goetz)
Subject: Re: Why use Perl when we've got Python?!
Message-Id: <7p5gms$f9s$1@prometheus.acsu.buffalo.edu>

I'm a Perl newbie, but I have noticed one way Perl gurus and I disagree:
I like a language which is easy to remember and easy to parse.  I didn't
like C++, for instance, because of all the extra overhead involved in
remembering the language's funky "except on alternate Thursdays unless under
a blue moon" special cases.  The keyword "virtual" has three different
meanings, which you are supposed to figure out from context.  Etc.

Perl programmers seem to be at the extreme opposite end of the spectrum:
"We are willing to devote entire regions of our brain to Perl and the
recognition of Perl constructs if it will enable us to save typing one
parenthesis a day."  Witness the following (paraphrased) quotes that I've
seen on this newsgroup and in the Perl docs just this past week:

"The . operator is too pretty to be used for just one thing."

"The convenience of having fewer keystrokes is easily worth the
ambiguity introduced by this use of brackets."

and (my favorite)

"It would seem redundant to specify the parameters of a function
both when you call it and when you define it."


Phil Goetz


------------------------------

Date: 15 Aug 1999 02:55:38 GMT
From: fl_aggie@thepentagon.com (I R A Darth Aggie)
Subject: Re: Why use Python when we've got Perl?
Message-Id: <slrn7rcb5c.5k9.fl_aggie@thepentagon.com>

On Sat, 14 Aug 1999 17:39:51 GMT, thehaas@my-deja.com <thehaas@my-deja.com>, in
<7p49l5$uv7$1@nnrp1.deja.com> wrote:

+ I've been reading that flame war

I've skipped the latest installment of 142 posts...

+ but I noticed that it is the Perl
+ people, for the most part, that have donned the asbestos undies and
+ charged up their flame throwers

Ummm...with a subject line like "Why use Perl when we've got Python?"
Or would you say that such a subject is non-inflamatory?

James

-- 
Consulting Minister for Consultants, DNRC
The Bill of Rights is paid in Responsibilities - Jean McGuire
To cure your perl CGI problems, please look at:
<url:http://www.perl.com/CPAN/doc/FAQs/cgi/idiots-guide.html>


------------------------------

Date: 14 Aug 1999 21:31:46 -0700
From: Tom Christiansen <tchrist@mox.perl.com>
Subject: Re: Why use Python when we've got Perl?
Message-Id: <37b634a2@cs.colorado.edu>

     [courtesy cc of this posting mailed to cited author]

In comp.lang.perl.misc, thehaas@my-deja.com writes:
:Although Perl and Python, as languages, are very similar, the culture
:that surrounds the two languages are quite different.  I know when I've
:asked someone for help in either Python or Perl, the Python people are
:definitely the most helpful.  I think I can safely say, that the Perl
:community is quite arrogant, especially to people new to it.  

It certainly didn't start out that way, and for many years Perl was
famous for being precisely exactly the opposite of hostile.  It was
about a programming community of mutual benefit.

Think back to the 80s and early 90s.  The change, if it really happened,
came with the upty-gazillion CGI script kiddies who couldn't program
2+2, yet who wanted *us* to write *them* these persistent, encrypted,
crossplatform, multiscreen shopping carts for e-commerce, complete with
dynamically-generated animated vanity counters, each and every time 
they stepped up to the feeder.

As a result, There's not much left of a spirit of a programming community
of mutual benefit when it becomes numerically dominated by people who
don't want to study or to work or EVEN TO PROGRAM, and who all seem to
think you owe them something.

When > 90% of the newsgroup postings are ill-formatted garbledy-gook
that also fall into the category of not having bothered to have first
checked the online docs or faqs that come with Perl, these things add up.
And eventually, it risks breaking our spirit.  There's just no way to deal
with the never-ending onslaught of non-programmer CGI script kiddies, who
seem to outnumber the rest of us zillions to one.  

So what do you do?  You either bail out of this untenable situation, as
Larry Wall has done, or else "customer-service battle fatigue" sets in.
When that happens, people end up getting snapped at, sometimes mistaking
an honest learner for yet another beggar looking for handouts.  I dare
say this would happen even in the best of families, given equivalent
circumstances.  I do think that earnest individuals seriously wanting
to work hard are still given the same helping hand they always got.

Be careful what you wish for.

--tom
-- 
Emacs is a fine operating system, but I still prefer Unix. -me


------------------------------

Date: 15 Aug 1999 04:17:04 GMT
From: mkozlows@guy.ssc.wisc.edu (Mike Kozlowski)
Subject: Re: Why use Python when we've got Perl?
Message-Id: <7p5f00$m98$1@news.doit.wisc.edu>

In article <37b56fcf@cs.colorado.edu>,
Tom Christiansen  <tchrist@mox.perl.com> wrote:

[Newsgroups trimmed]

>"Perl: The Programmer's Companion" by Nigel Chapman
>This small and inexpensive volume (in which I aver no personal interest)
>stands head and shoulders above all others as the best introductory Perl
>book, 

It's a very good book, yes, but I really wish that Chapman hadn't decided
to 'use English' throughout.  I don't think using things like $ARG is a
good habit to get into, but novices won't know any better.  A nit, yes,
but there you have it.

The dialogue at the end is definitely worth reading, though; and, oddly,
somewhat applicable to this interminable "Perl vs. Python" debate...

-- 
Michael Kozlowski                                        
http://www.ssc.wisc.edu/~mkozlows/


------------------------------

Date: 1 Jul 99 21:33:47 GMT (Last modified)
From: Perl-Users-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin) 
Subject: Digest Administrivia (Last modified: 1 Jul 99)
Message-Id: <null>


Administrivia:

The Perl-Users Digest is a retransmission of the USENET newsgroup
comp.lang.perl.misc.  For subscription or unsubscription requests, send
the single line:

	subscribe perl-users
or:
	unsubscribe perl-users

to almanac@ruby.oce.orst.edu.  

To submit articles to comp.lang.perl.misc (and this Digest), send your
article to perl-users@ruby.oce.orst.edu.

To submit articles to comp.lang.perl.announce, send your article to
clpa@perl.com.

To request back copies (available for a week or so), send your request
to almanac@ruby.oce.orst.edu with the command "send perl-users x.y",
where x is the volume number and y is the issue number.

The Meta-FAQ, an article containing information about the FAQ, is
available by requesting "send perl-users meta-faq" from
almanac@ruby.oce.orst.edu. The real FAQ, as it appeared last in the
newsgroup, can be retrieved with the request "send perl-users FAQ" from
almanac@ruby.oce.orst.edu. Due to their sizes, neither the Meta-FAQ nor
the FAQ are included in the digest.

The "mini-FAQ", which is an updated version of the Meta-FAQ, is
available by requesting "send perl-users mini-faq" from
almanac@ruby.oce.orst.edu. 

For other requests pertaining to the digest, send mail to
perl-users-request@ruby.oce.orst.edu. Do not waste your time or mine
sending perl questions to the -request address, I don't have time to
answer them even if I did know the answer.


------------------------------
End of Perl-Users Digest V9 Issue 535
*************************************


home help back first fref pref prev next nref lref last post