[11039] in Perl-Users-Digest
Perl-Users Digest, Issue: 4639 Volume: 8
daemon@ATHENA.MIT.EDU (Perl-Users Digest)
Wed Jan 13 05:02:54 1999
Date: Wed, 13 Jan 99 02:01:28 -0800
From: Perl-Users Digest <Perl-Users-Request@ruby.OCE.ORST.EDU>
To: Perl-Users@ruby.OCE.ORST.EDU (Perl-Users Digest)
Perl-Users Digest Wed, 13 Jan 1999 Volume: 8 Number: 4639
Today's topics:
Re: Perl Criticism topmind@technologist.com
Re: Perl Criticism topmind@technologist.com
Re: Perl Criticism topmind@technologist.com
Re: Perl Criticism topmind@technologist.com
Re: Perl Criticism topmind@technologist.com
Re: Perl Criticism <ajohnson@gatewest.net>
Re: Seeking Web Developer position (MercuryZ)
Special: Digest Administrivia (Last modified: 12 Dec 98 (Perl-Users-Digest Admin)
----------------------------------------------------------------------
Date: Wed, 13 Jan 1999 07:45:58 GMT
From: topmind@technologist.com
Subject: Re: Perl Criticism
Message-Id: <77hivl$3pj$1@nnrp1.dejanews.com>
In article <369ACC94.57F7CF82@c-zone.net>,
chatmaster@c-zone.net wrote:
>
>
> Careful with the Perl program, you just might put your eye out!
Or a business.
> *Anything* in this world can be abused, and if you can't learn to use it
> properly yourself, or don't retain the proper comprehension,. then don't
> blame us or the language.
>
Bull! Some languages are much more abusable than others, period!
> 'Nuff said!
>
I certainly hope so.
Keep in mind that OOP purists are much more anal protective
that I am. I just am looking for a nice compromise.
> Tim...
>
-tmind-
http://www.geocities.com/SiliconValley/Lab/6888/langopts.htm
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
------------------------------
Date: Wed, 13 Jan 1999 07:57:09 GMT
From: topmind@technologist.com
Subject: Re: Perl Criticism
Message-Id: <77hjkh$490$1@nnrp1.dejanews.com>
In article <ltyan9m7ru.fsf@asfast.com>,
Lloyd Zusman <ljz@asfast.com> wrote:
> TRG Software <chatmaster@c-zone.net> writes:
>
> > topmind@technologist.com wrote:
> > >
> > > [ ... ]
> > >
> > > "There is a saying in the Unix community that one should not
> > > prevent idiots from abusing something because it may prevent
> > > someone else from making good use of it. [ ... ] Thus, I
> > > unfortunately have to disagree with the "Unix Chain-saw" rule."
> >
> > [ ... ]
> > *Anything* in this world can be abused, and if you can't learn to use it
> > properly yourself, or don't retain the proper comprehension,. then don't
> > blame us or the language.
>
> After browsing a bit through this thread, I want to offer my two
> cents' worth:
>
> First of all, I'm not in favor of protecting people against themselves
> against their wills, especially with regard to programming languages.
> There are plenty of languages for people to choose from, and people
> will tend to gravitate towards those languages which suit them best.
> I see no reason to change an existing, very useful and widely used
> language just to make it more palatable to certain people who could
> easily find several other languages that the are more comfortable
> with.
>
> And I want to ask the following question to those who seem to be
> concerned about this "Unix Chain-saw rule":
>
> What kind of damage do you believe can be done using Perl that cannot
> be done with a "cleaner" language? Are you just referring to
> productivity losses by novices struggling to figure out how to use
> Perl, or do you have in mind other kinds of damage that Perl could
> cause which could be ameliorated through the use of other languages?
Think like a manager. They do not want to risk being stuck with
cryptic code that takes the follow-on guy or guydette 1 hour
per line to reverse engineer.
Suppose you owned a business where a programmer spent 4 years
building all the software. The programmer suddendly quits
and you hire a new Perl expert. The Perl expert inspects the
code and realize that the system is composed of 30,000 lines
of code that looks something like this:
perl -le '$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
$t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
$x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
'$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
$t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
$x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
'$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
$t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
$x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
'$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
$t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
$x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
Can you spell B.A.N.K.R.U.P.T.C.Y ?
Of course this is an extreme example, but it happens on this and
smaller scales all the time.
As for languages that are less abusable, consider Pascal, Java, or
Visual Basic. One programmer confided in me, "I hate
programming in Visual Basic, but when I see
other's VB code, I can usually figure out
what is going on."
-tmind-
http://www.geocities.com/SiliconValley/Lab/6888/
"I am not an extremist"
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
------------------------------
Date: Wed, 13 Jan 1999 08:09:03 GMT
From: topmind@technologist.com
Subject: Re: Perl Criticism
Message-Id: <77hkaq$4oe$1@nnrp1.dejanews.com>
In article <slrn79lors.fmt.sholden@pgrad.cs.usyd.edu.au>,
sholden@cs.usyd.edu.au wrote:
> On Tue, 12 Jan 1999 00:37:10 GMT, topmind@technologist.com
> <topmind@technologist.com> wrote:
> >In article <yllnjc82hs.fsf@windlord.stanford.edu>,
> > Russ Allbery <rra@stanford.edu> wrote:
> >> topmind <topmind@technologist.com> writes:
> >>
> >> > I challenged someone to show me why Perl's power cannot be cleaned up
> >> > without significant (initial) productivity loss. I have not seen any
> >> > yet.
> >>
> >> Perhaps because many of us believe that, like nearly all programming
> >> languages, Perl is as "clean" as the programmer wishes it to be. You can
> >> write clean Perl and you can write obfuscated Perl, things like my sig.
> >> My production code doesn't look anything at *all* like my signature, and
> >> if someone tried to do something like that in a production script, I'd
> >> have a long talk with them.
> >>
> >> The same is true of most languages. The dichotomy you're presenting is
> >> not one that many of us agree with, so your challenge doesn't mean
> >> anything to us.
> >
> >From my webpage:
> >
> >"There is a saying in the Unix community that one should not prevent idiots
> >from abusing something because it may prevent someone else from making good
> >use of it. In other words, give everyone chain-saws because (hopefully) more
> >people will build useful things than the number who will damage something or
> >someone. However, it is my observation that more programmers are more likely
> >to abuse a language than make good use of it. This is usually because the
> >incentive to finish fast is greater (and easier to measure) than the
> >incentive to make coherent and maintainable systems. Thus, I unfortunately
> >have to disagree with the "Unix Chain-saw" rule."
>
> You can have your opinions, nothing wrong with that. Not allowing bad
> programmers to cause damage will also stop the good programmers from
> doing that which hasn't been thought of yet. You think that's a price
> worth paying, the Unix philosophy doesn't. So of course people who
> follow a different philosophy aren't going to do your leg work
> for you.
>
> >
> >In short, I don't trust other programmers any more
> >than I trust automechanics. There is no decent feedback
> >loop to punish bad programmers who can deliver short-term
> >results at the expense of maintanable code.
>
> It's called a code-review... But you won't care so why am I bothering.
Few companies actually spend the money or time for such.
I am not against it, but just saying that it will not
occure very often, just like training.
>
> >
> >Also, I still believe in the idea that 80% of Perl's power can
> >be kept without the holes of abusability left in it.
> >This is my main goal, not to bash Perl. Some of you are
> >taking this personally.
>
> Well take the latest source and produce a patch that does just that and
> see if it works. This is how open source is meant to work. Freedom and all
> that. 'Show me the code' is the cry when people just talk about the things
> they think would be wonderful.
I am not sure I follow. What do you mean by "patch"?
>
> So write the code and if it works (and even if it doesn't probably) you'll
> find others to help. You'll have to learn how not to resort to name calling
> when you recieve criticism or it will all fall apart of course.
>
> I actually look forward to seeing your new project to create a better perl.
> I just doubt you actually want to do any more than talk about your ideas,
> as evidenced by the details required for implementation missing from your
> web pages.
>
I am not skilled at building interpreters. Why is that a
prerequite for language design? (I known I could build it,
but it would not run very fast. I am an applications programmer,
not a systems programmer.)
Architects don't construct
their actual designs. Pilots don't build jets. Walt Disney
rarely did actual animation (except in his early years).
He admitted that he was better at layout and planning than
at actual animation.
Why do some see this as the litmus test for language ideas?
I don't get it. (Other's say the litmus test is reading
100 academic books.)
> --
> Sam
>
> Fifty years of programming language research, and we end up with C++ ???
> --Richard A. O'Keefe
>
-tmind-
http://www.geocities.com/SiliconValley/Lab/6888/langopts.htm
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
------------------------------
Date: Wed, 13 Jan 1999 08:24:13 GMT
From: topmind@technologist.com
Subject: Re: Perl Criticism
Message-Id: <77hl76$6jt$1@nnrp1.dejanews.com>
In article <slrn79lvjs.mtj.dformosa@godzilla.zeta.org.au>,
dformosa@zeta.org.au (David Formosa (aka ? the Platypus)) wrote:
[...]
>
> I haven't seen that happen in my workforce. Indeed this problem can
> be solved useing good code review methidology.
I haven't seen code review happen in the workplace, and I am
in no position to start it.
>
> [...]
>
> >>> the fact that you can't find any of them [books] is not the
> >fault of these languge designers. <<
> >
> >Yes it is. They should publish it on the web for free.
>
> Well larry wall has placed some of his critor on the web,
>
> http://www.wall.org/~larry/natural.html
Good. It's a start.
>
> [...]
>
> >>> It just happend to coinedently happened to share a commen scope of the
> >
> >package main. If they where in diffrent scopes then they would nosuch effect
> ><<
> >
> >Like I said before, "isolate" is a whole lot simpler than using packages
> >(for our given purpose).
>
> Given that I've never had need for such a keyword, and given that the
> need to use such a keyword would indercate realy poor design and given
> that a number of alternative better scheams exist, do you think adding
> it is worth it?
What do you mean it would "indercate poor design"? Better schemes?
Could you please elaborate? I don't think you understand what
"isolate" is all about. C is ALL "isolate", Perl is none (excluding
packages).
It allows chosing which routines acts like C and which act like Perl.
>
> [...]
>
> >>> I do it quite alot in meny of my programs its quite natural to do. <<
> >
> >When you get used to something, of course it is "natural" for you.
>
> No its not natural because I'm used to it, its natural because it
> mirrors the way I think. I can often guess at a perl construct to do
> what I wish to do and have it work because perl has been well designed.
>
Well, I think in terms of tables and table-oriented operations,
and Perl is not very table-oriented IMO. (It can be bent to
do it, but bent is bent.)
> [...]
>
> >>> [I believe DBM is an *add-on* to Perl, not built into the language.]
> >You can beleaave what you wish but it doesn't make them truthfull. <<
> >
> >Is it and add-on, yes or no?
>
> DBM support is as much an add on as the regexp engion, hash table
> support, its socket support or its abilit to do mathimatics.
>
I don't beleive that regex's need "use" statements and knowledge
of which directory it's in.
> [...]
>
> >>> The perl5 archives would be a good place. <<
> >
> >Let's see if L.Wall considered the same possible variations
> >that I did. Let's see why he rejected them. Where are
> >these Perl Archives?
>
> http://www.egroups.com/list/perl5-porters/info.html
>
I will try to take a look.
> --
> Please excuse my spelling as I suffer from agraphia. See
> http://www.zeta.org.au/~dformosa/Spelling.html to find out more.
> How to win arguments on usenet http://www.zeta.org.au/~dformosa/usenet.html
>
>
-tmind-
http://www.geocities.com/SiliconValley/Lab/6888/langopts.htm
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
------------------------------
Date: Wed, 13 Jan 1999 08:26:51 GMT
From: topmind@technologist.com
Subject: Re: Perl Criticism
Message-Id: <77hlc4$6n3$1@nnrp1.dejanews.com>
In article <369ABCC5.E477FC71@mediaone.net>,
"Michael D. Schleif" <mds-resource@mediaone.net> wrote:
> topmind@technologist.com wrote:
> >
> > BTW, an equation for a perfect dichotomy is probably not possible
>
> Black & White
>
> Good & Evil
>
> Plus & Minus
>
I meant regarding language classifications, not general dichotomies.
> --
>
> Best Regards,
>
> mds [...]
-tmind-
-----------== Posted via Deja News, The Discussion Network ==----------
http://www.dejanews.com/ Search, Read, Discuss, or Start Your Own
------------------------------
Date: Wed, 13 Jan 1999 03:15:41 -0600
From: Andrew Johnson <ajohnson@gatewest.net>
Subject: Re: Perl Criticism
Message-Id: <369C643D.D1F775@gatewest.net>
[cross quoted from several postings]
topmind wrote:
! code and realize that the system is composed of 30,000 lines
! of code that looks something like this:
!
!
! perl -le
'$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
! $t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
! $x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
! '$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
! $t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
! $x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
! '$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
! $t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
! $x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
! '$n=170;for($d=2;($d*$d)<=$n;$d+=(1+($d%2))){for($t=0;($n%$d)==0;
! $t++){$n=int($n/$d);}while($t-->0){push(@r,$d);}}if($n>1){push(@r,$n);}
! $x=0;map{$x+=(($_>0)?(1<<log($_-0.5)/log(2.0)+1):1)}@r;print"$x"'
!
! Can you spell B.A.N.K.R.U.P.T.C.Y ?
!
! Of course this is an extreme example, but it happens on this and
! smaller scales all the time.
point to one example! ... no, I meant one example in the "real
world" ... a real example of purposely obfuscated perl code (that
was not intended for a contest). [you do seem to think that the 'real
world' really exists and that it harbours deep rooted problems ...
so, show us anything to back your claims
! > It's called a code-review... But you won't care so why am I
bothering.
!
!
! Few companies actually spend the money or time for such.
! I am not against it, but just saying that it will not
! occure very often, just like training.
ok, so you want to blame a language for the hiring practices of
some company? I simply have to ask now ... Are you a manager? Have
you ever been one? Have you ever hired a programmer? Are you a
programmer that has ever worked for a manager? Do you have any idea
at all about what you are talking about? or did you just not get a
job and can't handle not being qualified for something?
[and somewhere else]
! I haven't seen code review happen in the workplace, and I am
! in no position to start it.
do you work? have your ever worked in the software/programming
industry for anyone but yourself? ... do you have any idea about what
happens at a typical software house? ... If you want to build a
language for the 'real world' programmer don't you think you might be
wise to consider those who program (besides yourself)?
just have to ask... I'm not saying that "been there done that" is
everything, but if you haven't then you don't really know what the
rest of the world is doing do you?
[and somewhere else, regarding the importance of implementation]
! Why do some see this as the litmus test for language ideas?
! I don't get it. (Other's say the litmus test is reading
! 100 academic books.)
implementation allows others to try your ideas...if you think your
ideas are that worthwhile, implement them and see what the rest of
the world thinks (at worst you'll have your own language that you can
do whatever you like with).
Like I said before ... design a language for idiots and the best you
can hope for is a language that attracts its intended audience ---
good luck.
andrew
------------------------------
Date: 13 Jan 1999 02:54:39 -0600
From: sf@sf.com (MercuryZ)
Subject: Re: Seeking Web Developer position
Message-Id: <369c5f4f@news2.newsfeeds.com>
In article <3622F471.35377BCE@users.qual.net>, kris@users.qual.net says...
>
>Due to lay-offs at a local Internet company, I am available for hiring
>as a Web Developer. I have a Bachelor of Science degree, and I've been
>designing Web pages on a freelance basis for a year, before being hired
>by the company I was just laid-off from. I am fluent in HTML and have a
>
>solid understand of Perl, CGI, and Javascript. An example of my work
>can be seen at: http://www.fit2print.com/ and my resume can be viewed
>at: http://www.fit2print.com/resume/index.html
>
>Thank you for your consideration.
>
>Sincerely,
>
>Kris Bernardic
>
>
Even though I am not a potential employer, I took a look at the above
URL just out of curiosity. I must say that for one I am unimpressed,
and for two, your attitude is one that is quite self-involved
and richly egotistical. From what I know no company
would want to hire someone who declares themselves as a top talent
and 'One of the best and most talented Web Designers/Programmers, is a
local favorite, Kris Bernardic'. I also looked at your resume,
and I had a sneaking suspicion that you had a working knowledge
of Perl, Javascript, and HTML--not an expertise.
I know this sounds unfairly critical but try to present
a more humble teamwork-orientated image.
-----------== Posted via Newsfeeds.Com, Uncensored Usenet News ==----------
http://www.newsfeeds.com/ The Largest Usenet Servers in the World!
-----------== Over 66,000 Groups, Plus a Dedicated Binaries Server ==----------
------------------------------
Date: 12 Dec 98 21:33:47 GMT (Last modified)
From: Perl-Request@ruby.oce.orst.edu (Perl-Users-Digest Admin)
Subject: Special: Digest Administrivia (Last modified: 12 Dec 98)
Message-Id: <null>
Administrivia:
Well, after 6 months, here's the answer to the quiz: what do we do about
comp.lang.perl.moderated. Answer: nothing.
]From: Russ Allbery <rra@stanford.edu>
]Date: 21 Sep 1998 19:53:43 -0700
]Subject: comp.lang.perl.moderated available via e-mail
]
]It is possible to subscribe to comp.lang.perl.moderated as a mailing list.
]To do so, send mail to majordomo@eyrie.org with "subscribe clpm" in the
]body. Majordomo will then send you instructions on how to confirm your
]subscription. This is provided as a general service for those people who
]cannot receive the newsgroup for whatever reason or who just prefer to
]receive messages via e-mail.
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". The real FAQ, as it
appeared last in the newsgroup, can be retrieved with the request "send
perl-users FAQ". 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". It appears twice
weekly in the group, but is not distributed in the digest.
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 V8 Issue 4639
**************************************