White Camel Award Nominations
Idmat writes "Nominate the Perl community's unsung heroes for the first White Camel
awards. Three awards--for outstanding contributions to Perl Advocacy,
Perl User Groups, and the Perl Community--will be awarded at O'Reilly's
Perl Conference 3.0 on August 24, 1999. Nominate the folks who have
made these important non-technical contributions to Perl at
perl.com All nominations must be in by August 2.
The White Camel awards are sponsored by Perl Mongers, O'Reilly &
Associates, and sourceXchange.
See the press release for more info " Anyone want to share
their ideas?
Perl is the COBOL of the 90's. No-one (in their right mind) would want to maintain Perl code, but tonnes of scripts have been written in this ugly language. Whoever manages to kill off Perl for good deserves the prize for "helping the community the most".
Switch to Python before it's too late!!!
Perl is a sinking ship. Only people who like obfuscated languages should use Perl. Now that Python has perl-style regexes, Perl belongs in the trash bin. Perl is a very productive language, but it is very hard to read even for fairly experienced coders. (what the @#$% is $@???) Perl also is designed for text processing and fails miserably in other application domains. It's OO features in particular are a disgusting hack. Python, on the other hand is fully general purpose, extremely productive, and is extremely easy to read. (So much so that I could understand Python programs before I had even started to learn the language) Once you learn Python you'll never go back.
abigail= PS&QRY=comp.lang.perl.miscD &DBS=1&format=terse&showsort=score&maxhits=25&LNG= ALL&= &authors=&fromdate=&todate=
http://x29.deja.com/=dnc/[ST_rn=ps]/dnquery.xp?ST
+abigail&defaultOp=AN
subjects=comp.lang.perl.misc+abigail&groups
Seriously,
/. .....
I thought most professional web stuff used Java/PHP whatever......
Course there's always
'nuff said.
You are an evil evil man. Tom Christiansen /. is a cesspool.
has done more to help people learn and use Perl
than you will ever understand. This kind of trash
is why
Don't you just hate it when something you consider
to be technically inferior to your favourite tool
is more popular?
Lots of the anti-perl rhetoric sounds like sour
grapes. If people can use perl to get their jobs done then more power to them and perl.
That something works is probably more important than that it's "100% pure Java," and in most cases the design of the system has more impact than the language it happens to be implemented in.
I'm not saying anything about Python or Java or any other language, just wondering why there is some knee-jerk reaction against a tool which helps people work.
Is RMS trying to assimilate Perl as well?
Isn't anyone asking about the sponsors?
sourceXchange is that HP program to link up
developers with software projects. what easier
way to find good developers than to ask the OSS
community? if this is the real motivation for
this contest, it could be worse, but consider
maybe that your nomination is really just
helping a large company, not the open source
community...
The fact that you even grought this up is telling.
I can recode any non-gui java program you give me in half the space of the orignal Java. In fact that's a conservative estimate.
Given a project spec, a good perl programmer can code a solution in half the time a good Java programmer can.
No one has put more publicity behind perl than ORA.
For dynamic generated html, that's it.
The profs always snub perl because you dont need an expensive IT degree to use it. It puts them out of a job.
The amount of 'help' Tom has provided to the
Perl community is vastly overshadowed by the
amount of damage he's done with his personality.
And just what have you done, coward?
'nuff said.
It's easy to move code from one part of a program to another -- just copy the block, mark it, and indent it to the proper level as the enclosing block. Both vi and emacs can do this very easily. If you were writing in Perl or C++ you would probably do this anyways.
Isn't this the same fellow who was frothing at the mouth about RMS? You know, there is actually a
12-step program called "Emotions Anonymous." However, we should be grateful that he hasn't
mentioned white power so far.
Perl seems to attract marginal and angry people.
I have never seen this sort of rant from a
pro-Python poster. We are not on alt.doctress.neutropia, after all! I could never
write such an unseemly display of spleen unless I
was angry at the moment of writing. It is better not to be angry -- certainly it leads to better writing. Mr. Christiansen, you are forgiven.
Posted by Volkadav:
:^) Don't get me wrong, the times I've encountered Python I've liked it, and intend to try it more. Language debates are a little pointless in the final analysis for most of us who don't have advanced CS or Linuguistics degrees anyway... ("And just how many EBNF syntax definitions have _you_ written today, schmarty pants?! >:)")
I use perl fairly often, and while it can be written in a _highly_ obfuscatory manner, it is just as possible to write very clear code (c.f. English.pm to take care of the $@ phenomenon). IMHO C is a thousand times worse, and I don't see (no pun intended) anyone calling it a sinking aquatic transportation method.
Hmm? You can quite happily store your data in interwoven dictionaries, lists, and tuples if you like, and never write a single class. If you want to talk about classes being a requirement, talk about Java.
There's a Python-to-C translator, though it seems very experimental and I'm not familiar with its status; the author claims it will handle almost all Python code, but you know what those programmers are like. Of course, you can compile Python to Java bytecodes quite nicely using JPython.True, but it also means you can leave it out if pattern matching isn't of interest to your application domain. People who want to run massive numeric simulations, build virtual environments, or run a large online role-playing game may not care about processing text. (Coincidences are funny things; while checking the third link, I went to reference.com and was startled when my search pulled up Python code on my screen -- someone forgot to make a CGI script executable, I suppose. reference.com is an application that does care about text searching, I would imagine.)
The greatest problems with regexes in Python 1.5 are:
- Parts of re.py are still written in Python, not C, and are therefore slow. Fixing that is on my list for 1.6.
- PCRE doesn't do a lot of optimizations and analyses. Mostly this is because the compiler doesn't build a parse tree and traverse it, but instead tries to construct a string of bytecodes in a single pass.
- Unicode regexes are an open issue at this point. I've been casting longing glances at the regex engine in Mozilla, which does build a nice parse tree and supports Unicode, and hope to work on splitting it out into a separate library.
Python doesn't have the idea of scalar/array/etc context, so I don't see the relevance. If you're generating multiple blocks of code, then generating curly brackets and indentation are isomorphic problems; replace { with \n + indentation-level spaces, and replace '}' with newlines. PyApache (don't ask me why it's not called mod_python). Zope is more interesting still.Hey what about nominating Rob, for his most amazing use of Perl to create this most amazing of sites?! Plus He makes the source available to those at large for their pearl learning.
---- Fight to protect your right to keep and arm bears! ummmm... ya I think that's right....
> You find that perl is often snubbed by all CS courses, for traditional imperative programming languages
:)
> (and ofcorse the almost useless functional and declarative languages)..
*giggle* Have you ever done any programming in a functional language such as, say, Haskell? I find it to be a very elegant expression of certain algorithms. Of course it's not best for everything, but nothing is. Perl is best for text processing, and in my opinion second best for everything else (that's one of the reasons i really like Perl). Also, would you inflict Perl on someone as a first language? However, I'd agree that Perl would be a far better choice than the languages used in my last CS class (COBOL and C++).
Perl is a kluge, but it's the only kluge you'll ever need.
Several of the points on your list are wrong. Several others are irrelevant. What disturbs me the most is that you had to stoop to personal insults. I won't go into what that implies.
How about this: find your most readable piece of Perl code that you think can't be easily reimplemented in Python. Post it here. Nothing silly like executing chunks of Perl code allowed. It's just as hard for Perl to execute chunks of Python code.
Remember: it has to be readable code.
Comment removed based on user account deletion
Comment removed based on user account deletion
The OSS community should have more of these kinds of awards, aiming for public recognition of various folks helping OSS in both technical and non-technical areas.
Certainly this would help to futher motivate advocates and developers alike.
I'm sorry, but Perl is by far one of the best (if not the best) utility languages it out there. Granted I wouldn't want to make a ray tracer with it, but still you can't beat it for all the miscellaneous tasks that come up during the day.
Most of the posts I've seen deriding Perl, can be summed up as, "Ehh Perl! _____ is much better for CGI and WWW!" Now I'm not here to debate that, but I can't stand by and let people pigeon hole it as simply a "web" language. It's a general text manipulation language. Yes you can do CGI with it, but it can also do so much more. I've used it as a code generator, and for numerous build scripts.
Perl is somthing that should be every hacker's toolbox. It just makes life so much easier. Sure you can probably do all the stuff I use Perl for with something else (shell scripts come to mind), but why would you? Perl may not be the perfect too for the job, but it certainly gets the job done.
I don't know about snubbed. Every professor I had sung the praises of Perl. The reason why Perl isn't used, and the reason it is so powerful, is because it abstracts out so much detail. You don't need to know anything about memory management, the garbage collector takes care of it. Want a hash table? Just type, "%htable"!
I occasionally interview people at work. I met a 4.8 GPA master's student who didn't know the first thing about advanced data structures. Why? He was taught using Perl!
I_wish_I_could_use_python_but_my_space_bar_is_brok en!
James
Now, what can Perl do that Python cannot do? I don't know what you're looking for here. There's a remarkably long list of things you can't do in python than you can do in Perl. Some of these are severe. Others are not.
- With python, the object is the way, the truth, and the light. Let no man cometh unto his data save through the object. In perl, OO is an option, not a requirement.
- With python, you cannot pass in chunks of anonymous code and access variables in that code chunk in the correct scope. That's because Python has no understanding of proper closures. Perl does.
- With python, you cannot generate C code to compile into an a.out.
- With python, the pattern matching is not tightly integrated into the language. It is merely loosely bolted on, which introduces inefficiencies and quoting clumsinesses.
- With python, class methods and object methods are treated dissimilarly. This is unclean.
- With python, you cannot access your overridden superclass's method in a portably symbolic fashion -- there's no SUPER or super().
- With python, you cannot implement a class in whatever way makes sense to you. You must use its system. That means, for example, that you cannot use a closure as an object. No big surprise, I suppose. Python never did figure out closures.
- With python, you cannot correctly garbage collect lost circular references when the interpreter thread shuts down. This makes it completely unsuitable for use in embedded applications. It fails to follow proper finalizer semantics for things it forgets about!
- With python, you cannot tie arbitrary semantics to variables and handles through the tie machanism to trigger implicit object calls.
- With python, you cannot set watch points on variables.
- With python, you cannot catch compile-time errors using function prototypes.
- With python, you cannot determine your calling context, nor behave differently dependent upon the same.
- With python, writing an eval string is a pain in the royal butt due to the insane whitespace problem.
- With python, you have significantly less control of compile-time versus run-time issues. Yes, this matters.
- With python, you have no equivalent to CPAN or the CPAN.pm module to support a system for automatatic registration, distribution, replications, and installation of 3rd-party modules.
- With python, you cannot write poetry, because of the white space issue -- again.
- With python, you have no equivalent to Apache's mod_perl.
There are doubtless many others. These are just off the top of my head. You should visit the Perl OO links I gave in a different followup so you actually know what you're talking about next time.Perl, being a great language, doesn't get much recognition from the academic community.
How many times do you see perl mentioned in a programming language text book??
You find that perl is often snubbed by all CS courses, for traditional imperative programming languages (and ofcorse the almost useless functional and declarative languages)..
My guess to why this is occurring is that perl brakes away from the traditional programming language design rules (or current trends) so much that it is viewed as inferior. While every traditional imperative language can have a 'record' data type, Perl can have none... Pointers in Perl are all but gone.. and all variables are global, unless explicitly declared.. - and those are just one of the many examples to why this language is viewed as a step back. However, these features are what make the language better, and I could go on about the many superior features that perl has that are not found in any of the major languages..
I nominate the person who's quest would be to re-write the text books, and put at least a page on the most Practical language on Earth, Perl!