Posted by
CowboyNeal
on from the rubbish-listers dept.
JamesD_UK writes "mod_perl 2.0.0 has been officially released into CPAN. Enhancements over mod_perl 1 include threads support and a perl interface to the Apache Portable Runtime. More details on the release can be found on CPAN."
since when where perl and.net the only systems on the planet?
There are plenty of perfectly good up-to-date ways to do things, such as with python or PHP. Both of which are at least a capable as.net, but have the added bonus of no platform lock in (PHP and python work equally well on Linux, FreeBSD and Windows servers)
Re:Perl still used?
by
Anonymous Coward
·
· Score: 0
Kurwa!
Swearing in a different language doesn't make it any less offensive...:)
Re:Perl still used?
by
_defiant_
·
· Score: 5, Informative
Who still uses Perl for web stuff?
Ohh, I don't know... how about Amazon and Salon? Kuro5hin and all the other Scoop based sites like DailyKos and MyDD. And now that I think about it, MovableType, TypePad, and LiveJournal are all writen in Perl.
Where does management put it's money? Much, much, much more goes into Microsoft projects than PHP.
So, when I said 'until management ponys up some money' I was talking about projects that actually cost money...
-- No reason to lie.
Re:Perl still used?
by
ajs
·
· Score: 2, Informative
"Yeah, but is it mod_perl or cgi? If you're using fastcgi, is there still a big performance gain by switching to mod_perl?"
If you're still thinking in terms of CGI, then it's close to a wash.
However, mod_perl isn't about CGI. mod_perl is about exposing the Apache API to you. Want to build a caching system that doesn't require a single line of code to be executed for 90% of incoming requests? You can do that with mod_perl. Want to proxy some requests based on the protocol version the browser uses? mod_perl can do that long before you get to the point of even trying to find a cgi program on disk.
mod_perl lets you do far more than any lightly coupled tool can, and thus it is the building block upon which you build a real CMS (like bricolage) or other high-level Web tool (like TTK, which is what Slashdot uses).
I run a lot of webapps in Perl, and from time to time I run into DRY (Don't Repeat Yourself) stuff. Currently I am considering Ruby on Rails or Catalyst, wich is an MVC written in perl.
Quote from the Intro.pod:
Catalyst is an elegant web application framework, extremely flexible yet extremely simple. It's similar to Ruby on Rails, Spring (Java) and Maypole, upon which it was originally based.
Wow! I have been programming perl for years and had no idea about Mason. My conclusion was that PHP's only advantage was that you could mix code and HTML easily, and that appears to be exactly what Mason does. That is so sweet.
Re:Perl still used?
by
abulafia
·
· Score: 4, Informative
Amazon.com - E-commerce pioneer seeking to
offer the world's largest selection of products online.
for details.
AvantGo - Mobile applications for handheld
devices.
DynDNS.org - One of the world's largest
providers of free and premium Dynamic DNS services.
Findory - Personalized news and blogs aggregator. Findory learns what kind of content you like by the pages you read.
Live365.com - The world's largest Internet radio website.
Salon.com - Online magazine covering news,
politics, technology, art, sex and health; winner of numerous web
awards.
Weta Digital - Weta Digital are well known as the special effects people behind the Lord of the Rings films. At his OSCON 2004 keynote, Milton Ngan of Weta Digital thanked some technologies, including Mason, which is used as part of their intranet.
A
AcuTrans.net - Home page for AcuTrans, a company providing an online content management system integrated with transcription services (built with Mason) for business, legal, medical, and self-insured companies.
Adventist.org - The official web site of the Seventh-day Adventist Church.
Alhazred - Progressive music project being produced with open source/free software
Alzabo.org - Home page for Alzabo data modelling tool.
American Lung Association of Washington - Assuring lung health for the people of Washington state through research, education, community service and advocacy.
Apartments - Apartments for rent by RentersInc.com. Free apartment search engine and apartment guide.
arabellan - Web presence of Ryan "Exide Arabellan" Zander, a graphical artist.
astrojax.com - amazing fun and action game - community website with lots of features.
Autismeinfocentrum.nl - Information- and documentationcentre about autism and related subjects in the Netherlands.
Beotechnic - Company specializing in knowhow transfer
Bikeworld.com - Online retailer, sporting a new 100% Mason-powered site that was developed entirely in-house.
bizjournals.com - Publisher of 41 weekly business newspapers across the US.
BlackSpider - Managed services provider
focused exclusively on the provision of e-mail security solutions.
Burma-Shave.org - All of the original Burma-Shave jingles, plus the Burma-Shave Daily mailing list.
C
cibera.de - cibera is an online library site which offers a central access point to interdisciplinary material concerning the Spanish- and Portuguese-speaking area as well as the Caribbean.
Cars - iCarsInc.com Cars for sale. Buy and sell new and used cars online. Your next auto purchase starts right here. Find new, used, classics, sports cars, luxury cars, trucks, SUVï½s and even motorcycles for sale.
-- I forget what 8 was for.
Re:Perl still used?
by
Anonymous Coward
·
· Score: 0
Who still uses Perl for web stuff?
Lots of people. Mostly because they're stuck with legacy baggage, I'd argue.
Also, a properly designed web site will make it impossible for the visitor to determine what server side technologies were employed to generate content. Sites that expose this information through file extensions and URLs with "servlet" in them are quite ruggish indeed.
Re:Perl still used?
by
Quattro+Vezina
·
· Score: 2, Funny
Sometimes people find that Perl is the right tool for their needs. At my company we have many internal tools written in Perl, and see no reason to change. We have a heterogeneous environment, so.Net is right out.
The apps we have work very well, and are well written (modular, use OO, and always use 'strict), so they are easy to maintain, and - get this - very easy to read for a professional coder who knows some Perl. Stuff like HTML::Template/Template::Toolkit, Class:DBI, and other modules are really nice to work with, and keep things very clean. While you can write hard to read Perl, we have code style guidelines that prevent this from being a real issue.
We also use Java/Swing for some tools, especially GUI apps (that way we can run them on OS X, Linux, and Windows with a fair amount of cross-platform compatibility), and use C for tools where performance really matters. But Perl is faster to develop with, and easier to maintain.
We have a few PHP web apps that we are rewriting to run under mod_perl. The performance differences are minimal, but Perl has a lot more power for a developer (CPAN is an order of magnitude better than PEAR, etc). We also want to get off PHP since it is an unstable target (many version updates cause breeakage), and currently the tools have code and html mixed together. PHP's default way of mixing model, view, and controller together is a bitch to work with. Once you start to abstract things and use templates PHP loses its original strength. Since we need to rewrite them anyway to clean up that awful mess, porting to Perl is a straightforward choice.
Bikeworld.com - Online retailer, sporting a new 100% Mason-powered site that was developed entirely in-house.
Wait a minute...That's me!
Are you copying this from some place?;-)
Chris
Re:Perl still used?
by
millette
·
· Score: 2, Informative
See also embperl if all you want is to embed perl (duh) in html, as you might do with php. That being said, you should separate the code and the layout, blah blah blah.
Re:Does anyone actually still use Perl?
by
Living+WTF
·
· Score: 1, Funny
> Isn't that a dead language kinda like Cobol?
I don't think so, netcraft didn't confirm anything like that...
-- I don't suffer from insanity, I enjoy every minute of it.
Fedora Core 4????
by
Anonymous Coward
·
· Score: 0
I wonder if they will be able to squeeze this into Fedora Core 4 before the code freeze.
Re:Slashdot Offshoring Myths
by
bigman2003
·
· Score: 2, Insightful
Overall a post with so much truth that it hurts. But, I disagree on one statement you made:
if someone with no education can do your job cheaper, you don't deserve your job
Not every job needs to be one that requires education. Many people do great work, without education- they jut have the skill and drive to do a better job than others.
I recently went from being a non-degreed schmuck, to one with a degree. This didn't make my work any better.
They are just as much trolls as posts replying to a Gnome article with C flames would be, or C++ flames in response to a KDE article. The tool is not about the lanugage. mod_perl has a great deal going for it as a Web tool. If you don't like Perl, then fine, but that's off topic with respect to mod_perl itself.
Re:Funny...
by
Anonymous Coward
·
· Score: 1, Insightful
Almost all of the comments criticizing Perl have been modded "Troll".
Maybe because this is a story about a new level release of a popular Perl module used extensively in Apache. Not a story about whether Perl is better or worse than <insert_language_here>.
Here is the list of the top level comments prior to yours that were modded down: 1) Never used it. What's the big deal? 2) FP 3) dead language. 4) offshoring myths 5) if the server is running it the slashdot effect will kill it. 6) Is there anyone left who hasn't switched to Ruby or Python? 7) Who still uses Perl for web stuff?
All were either totally OT, or obvious language-war trolls, save #1 which was wasn't a critical post.
AFAICT it looks like the moderation system is working quite well.
--
Hyperbole is the worst thing ever.
Perl a dead language?
by
Anonymous Coward
·
· Score: 5, Interesting
I do not understand how anyone can suggest that PERL is a dead language. It is still one of the most powerful text processing languages out there, with the extensibility that allows it to do everything from performing network activities to CGI. Although CGI is in its decline, it is still used plenty.
Theres that and the fact that PERL is just a really fun language, very easy, and extremely free-flowing, which I personally think is a good thing.
Re:Perl a dead language?
by
suso
·
· Score: 2, Insightful
Just like a natural language. A language is only dead when its no longer developed or used natively. A computer language should fit a simular definition. Thus, I would say it will be a LONG time before Perl fits that definition.
Re:Perl a dead language?
by
Anonymous Coward
·
· Score: 0
Text-processing is vastly overrated in web programming. Sure the protocol/output is text, but there's all sorts of abstractions and templating systems there for you. CSS has eliminated the FONT/layout stuff that people used to inline. If you're mangling text through regexs to generate HTML you're probably doing something wrong.
Re:Perl a dead language?
by
chibitoku
·
· Score: 0
I would dispute the statement that CGI is in its decline. Examine almost any advanced web application such as Google's GMail. Under the hood you will find a large body of JavaScript running upon your machine. The view you have is completely provided by this. Where then, you ask, is the CGI? Whenever any of these JavaScript components makes any kind of call back to the database or web server, it must do so via CGI.
Also, for almost any web page written in PHP, JSP, or ASP, whenever a form is submitted, it must use the CGI method for transmition of the form data to the web server or database.
So, even if you don't see it as much on the front end as you ussed to, CGI is still very much alive and well.
Re:Perl a dead language?
by
Anonymous Coward
·
· Score: 1, Informative
> Whenever any of these JavaScript components makes any kind of call back to the database or web server, it must do so via CGI.
So all those java web apps use CGI, eh? Zope's powered by CGI on the backend as well? I could go on, but wow... I mean, your assertion is so patently untrue, I rather suspect you don't even know what CGI actually is.
Re:Perl a dead language?
by
onlyjoking
·
· Score: 1
CGI is the Common Gateway Interface. Interface between what? The HTTP server and any seperate programme handling the request. If the HTTP server is handling the request internally, via mod_php or mod_perl for example, then the CGI interface doesn't come into it. Hence, with mod_perl and mod_php handling most dynamic content these days, it's true to say that CGI is in relative decline.
CGI is absolutely in decline but Mason is bigger than ever. The developer of Mason now works for Amazon.com (built on Mason) now.
Re:Perl a dead language?
by
Fnord
·
· Score: 2, Informative
For most of those cases, app servers have completely replaced CGI. The problem with CGI is lack of persistence, and process startup costs. These days, any decent web app is written with some persistent layer that interacts directly with the web server, and loads code snipets of its own language, starts objects, calls callback routines or something similar to handle requests. mod_perl, J2EE/JSP, PHP, Zope, and Ruby on Rails are all examples of this.
mod_perl has worked under Windows for many years. No need to compile any of it yourself either, as many people provide pre-compiled binaries for you (hint: google is your friend).
Specifically, I can speak for the binary copy of Apache 1.3 found on apache.org, and ActiveState's perl port of 5.6. They both work good together, and under Windows 2000 all the major features seem to work fine. Obviously, some of the unix-isms that don't exist under Win32 must be worked around (shared memory? proper forking? proper select() calls?) but it still works.
Does that answer your question?
Re:mod_perl on Windows
by
Jeffrey+Baker
·
· Score: 1
I used to maintain the binary distribution of Apache+mod_perl for Windows. It was a right pain in the ass, and core-dumped all the time, and was fully serialized. But I understand it's much better now that Apache 2 is out there.
Re:mod_perl on Windows
by
jjn1056
·
· Score: 2, Informative
I build a REST interface for an audio generation system at "http://mp3.motorola.com.cn:8080/composer" which is mod_perl2 on windows server 2003 and perl 5.8.6. It just works, not trouble.
-- Peace, or Not?
Re:mod_perl on Windows
by
Anonymous Coward
·
· Score: 0
Mysql and postgres. Im sure there was a thousand ways to get it to work, but sqlite is sooo easy. Considered the DBD:ADO and DBD::ODBC, never really get around to it.
threads support
by
Anonymous Coward
·
· Score: 2, Interesting
Out of curiosity, is this still the same threading model that's existed in Perl for some time? Or is it revamped? Because if it hasn't been updated, well, it's pretty much useless. I've done threading in perl, and every time you spawn a thread, a whole new interpreter is spawned. On top of this, there are many limitations on sharing data between threads (you can't share objects, for one thing).
It might as well be called forking, to be honest, because it doesn't really qualify as threading.
Re:threads support
by
Anonymous Coward
·
· Score: 1, Informative
as someone who's working with those damn threads right now, I can't help but agree. I positively love Perl, but threading needs work. I don't see where the "every time you spawn a thread, a whole new interpreter is spawned" comes from though...
--
People replying to my sig annoy me. That's why I change it all the time.
Indeed, Perl's threading support leaves a lot to be desired. I recently coded up an internet radio statistics collector daemon, which simply takes a count of the number of listeners on several shoutcast servers every 5 seconds, in parallel spawning a new thread for each server. It seems that finished-with threads aren't cleaned up properly, as I found out when after leaving it running for a few days I tried to find out why the website was responding so slowly to find that the stats collector was using 70% of the entire machine's memory...
Also spawning a new thread takes ages... I put it to the test and it is about 10 times as long as it takes to fork.
General note: what is it?
by
Anonymous Coward
·
· Score: 5, Informative
For people who are wondering what mod_perl is exactly: it's a way of integrating perl into Apache's webserver. I think the main advantage is that you don't have the overhead of firing up perl for each cgi-type request. The main gotchas, for the developers point of view, involve a little perl enviornment staying alive, when a perl script starts, runs, and stops, it cleans up after itself, but when it 'stays alive' inside apache, you have to make sure it's not accumulating too much memory cruft, that you're closing handles, etc etc.
This is what I know mostly by reputation, rather than direct experience, experts please feel free to correct me
Re:General note: what is it?
by
Anonymous Coward
·
· Score: 0
In other words, it's just like every web scripting environment after about 1997 or so. Instead the historians should tell the kids what CGI was.
Re:General note: what is it?
by
ydnar
·
· Score: 5, Informative
The main advantage is not the faster CGI execution environment.
mod_perl lets you create Apache modules in Perl, that handle every stage of a request (or anything else), and are full peers of Apache modules written in C.
ModPerl::Registry[Prefork] is just a bonus. The more interesting m_p modules are authn/authz/dispatch modules that can replace cumbersome C equivalents.
y
Re:General note: what is it?
by
michaelggreer
·
· Score: 1
It depends on what you are doing. I bet there are more people serving up CGI perl than are writing Apache modules. Therefore, the advantages of the former are more important to more people. Might not be as cool, but that's not what he said.
perl release schedules caught in subspace warp
by
Anonymous Coward
·
· Score: 0
mod_perl2 has been in development for years, still probably in some beta form. perl6 is now a four year old project with nothing much to show but a haskell testing platform.
sure. Some of us just *gasp* continue to use Perl 5. Amazing isn't it?
API space rename hurt
by
henry.thorpe
·
· Score: 3, Interesting
I'd been happily using mod_perl2 since 1.99r12 or so. Then, right before the release of 2.0, between 2.0r3 and 2.0r5, the namespace changed http://perl.apache.org/docs/2.0/rename.html. I realize that there are good reasons for doing this (http://marc.theaimsgroup.com/?t=111135037100002&r =1&w=2), but it was still pretty painful if you hadn't had some prior warning.
In particular, the FreeBSD ports tree is still feeling some pain. Guess I just got lazy with all the dependencies handled in the ports tree.
But, now we have to flash-cut our production systems, unless someone knows how to changes things to work under both namespaces...
Re:API space rename hurt
by
Anonymous Coward
·
· Score: 1, Insightful
I'd been happily using mod_perl2 since 1.99r12 or so.
But, now we have to flash-cut our production systems
Well that's what you get for using a beta release on production systems.
unless someone knows how to changes things to work under both namespaces...
Couldn't you make each use of the Apache API conditional upon $ENV{MOD_PERL_API_VERSION}?
-- It's tragic. Laugh.
Re:Great
by
Anonymous Coward
·
· Score: 0
With all due respect, no, nobody's switched to Ruby or Python, despite their merits. The number of programmers working in these languages is miniscule and there's virtually no commercial market for them. Perl at least was widely used at one time... projects that would have been done in Perl in the gay 90s are now probably PHP, Java or C#.
Re:Great
by
Anonymous Coward
·
· Score: 0
I have not and I do not plan to. As far as Apache is concerned - who is using Ruby/Python for CGI?
Also how is Perl6 a spectacular fuckup? It's been in development for a while because it introduces a lot of changes and I'm still doing fine with Perl5.6
Re:Great
by
Anonymous Coward
·
· Score: 0
Requesting shortage of crack amount handed out to moderators.
Re:Great
by
FooBarWidget
·
· Score: 1, Interesting
Yes, me. I'm the maintainer of a project which has about 30.000 lines of Perl code. And yes, the project is maintainable and the code is very much readable. The project is still under active development.
Furthermore, Perl has a bigger chance than Python of being installed on Linux distributions by default. This alone is a good reason to choose Perl over Python. Don't get me started about Ruby.
Everyone bitchin' that "CGI is dead" should broaden their horizons a bit. CGI may be stupid and dead, but Perl is used in a lot of different ways. It's still one the best languages for getting good work done.
For example, Mason is a pretty good tool for doing Perl-based web components.
So bitch about CGI if you wish, but that's not what Perl is for.
-- Sometimes it's best to just let stupid people be stupid.
Funny you mention Mason...Mason has not officially supported Apache 2 since mod_perl was not 2.0. Mason's position was that since there was no official mod_perl for Apache 2, they couldn't release an official Mason for Apache 2.
Yes, you could make it work but the documentation was spread over different people's home pages and it was certainly presented as more of a hacker's hobby than a professional development environment (unlike Mason for Apache 1.3.x).
Why does everyone link CGI and perl like they were the same.
I write my CGI apps in bash. Yes, bash. Pipelines are fun and nearly unparalleled in any language for their power and flexibility, and I have a vast function library in the filesystem. Obviously this is neither secure nor performant, but that's the quick and dirty start.
When it needs to get more complex, I'll put it in perl either as mason components or a FastCGI. More FastCGI, less mason these days. Some of my stuff works better in python because it gets a boost from psyco, but from that point I start looking at a CGI app in good ol C++ (with a CGI library of course).
Long as we're plugging toolkits, I'll put in one for Template Toolkit. Probably a better bet than Mason if you're just looking for a template engine (Mason's better for complex components, especially ones that break, since it always gives you backtraces)
-- I am no longer wasting my time with slashdot
Re:CGI
by
Anonymous Coward
·
· Score: 0
Uh, CGI *is* dead. That's why I use mod_perl to connect my Perl code to the web. Maybe you're thinking of something else when you say CGI?
Actually, almost all my new development is done in Ruby (using fcgi, which is NOT CGI) these days, but that's besides the point...
Is an elephant bigger or a girafe taller?
by
systems
·
· Score: 5, Insightful
It's not that Perl is good or bad by itself, the question is more like, you still that Perl is still good/better in comparision to Ruby, Tcl, Python, Haskell, OCaml, Mozart/Oz and others more.
I do realize, that sometimes comparing two languages is more like asking, is an elephant bigger or a girafe taller?
But honestly, if you are still to start learning would you still have picked Perl.
I picked Tcl and I have my reasons. (Tcl/Tk, Sqlite, event driven programming and OpenAcs).
And my second choice would be ruby, I strongly like the OOP paradigm and as far as I know Ruby got better support for this paradigm, I'll probably learn ruby next, I believe one should learn a new language every now and then (it's a common advice, I didn't come up with it).
Supporting old system is good enough reason to learn Perl, but beside taking advantage of availbe libraries (and this is a HUGE good reason) I dont see any other reason to get excited over Perl.
Re:Is an elephant bigger or a girafe taller?
by
Anonymous Coward
·
· Score: 0
Tell that to the Bioinformatics people that do most of their stuff in perl for text-parsing, since it's the best tool for the job.
Learning Ruby & friends would be nice, from a technical point of view, but, go find a job with Haskell or Ruby in mind.. there may be some in the US, but, we're not all living in US.
Just my $.2 brazilian cents.
Re:Is an elephant bigger or a girafe taller?
by
jenesuispasgoth
·
· Score: 1
beside taking advantage of availbe libraries (and this is a HUGE good reason) I dont see any other reason to get excited over Perl.
I see one. It has already been said in a previous comment : Perl is fun. You can really express a solution to a problem with ease, and still, you could have found a solution with the same effects with totally different means. How does that sound ? I can't talk about Ruby, nor Tcl, nor Python. I've seen a little bit of the latter for some project I had, and I find it interesting. So this is not about having the best language.
This is all about having a language fun to program with. And Perl is such a language. Strangely enough, that is what makes Perl difficult to handle too, sometimes : that freedom to program as you like make it that much harder to read previous code sometimes, if one hasn't taken some preliminary coding standards.
Re:Is an elephant bigger or a girafe taller?
by
Ed+Avis
·
· Score: 1
Of course Perl isn't better than OCaml. But it has a larger developer base and a somewhat bigger collection of useful libraries. There are other languages, in turn, which are even more whizz-bang than OCaml and have yet smaller developer communities.
If we were starting from scratch and picking things on technical merit would we really use Unix and C?
I'm also developing a quite unique system, on the url you can read below my username, which is written in mod_perl.
The whole website is around 100'000 lines of library oriented perl code, and is imo very well structured, commented and maintained. It is more than a website though, it is basically a group management system, with all the needs of it.
For the casual viewer it may seem that the website lacks features and kind of no-confort one, but it actually has a wide array of tools to use.
-- It takes a man to suffer ignorance and smile
Be yourself no matter what they say
Furthermore, Perl has a bigger chance than Python of being installed on Linux distributions by default. This alone is a good reason to choose Perl over Python. Don't get me started about Ruby.
What linux distribution installs perl, and not python, by default?
The benefits of Python over Perl are large enough to make the install of python a requirement, and a criterion of choosing a service provider. At least if your programs are going to be larger than 200 lines or so.
-- Save your wrists today - switch to Dvorak
Re:Perl a dead language? NOT
by
fanatic
·
· Score: 4, Interesting
I work doing router and server admin.
The shortest path between "need" and "have" is usually a perl script. CPAN alone puts perl above anything else I know of.
-- "that's not encryption - it's a new perl script that I'm working on..." - from some Matrix parody
I've started to learn python twice. Each time I run into the concept of "Syntactically significant white-space" I run away screaming. Give me braces, damnit.
-- "that's not encryption - it's a new perl script that I'm working on..." - from some Matrix parody
Re:Python: Syntactically significant white-space
by
OmniVector
·
· Score: 1
try ruby. it's better than python anyways
-- - tristan
Re:Python: Syntactically significant white-space
by
FooBarWidget
·
· Score: 1
And which Linux distribution has Ruby installed by default? Not mine.
Re:Python: Syntactically significant white-space
by
ultrabot
·
· Score: 1
I've started to learn python twice. Each time I run into the concept of "Syntactically significant white-space" I run away screaming. Give me braces, damnit.
Most people find that they like the whitespace after half an hour or so of trying it. I don't see why you'd be different. Perhaps a minor tweak of attention span would be in order...
I got bit by the second invisible bug 2 days after I started using Python. Right then I decided I would never use a language where two files that *look* identical can act so differently. I'm happily using Ruby now.
Bah. The whitespace thing is not all that bad unless you have funky editor requirements. Editing python in a textarea is hell. Do not attempt. Otherwise, it simply doesn't even bite me, and is only occasionally annoying.
I think python's weird "half-closed" ranges, the fact that "print" is a hardwired built-in and not a first class function, its lack of real closures (they're still read-only), crippled lambda compared to sub and anonymous blocks (I'll give ruby the win there), surprising behavior like list and hash default function args always aliasing the same value... those are all real and technical reasons to hate python.
Of course I have a laundry list of hates for perl too, but anyone who uses a language long enough will garner such a list. Familiarity breeds contempt. And to be fair, python has lots of nice things. I thought list comprehensions were nice, but generator comprehensions are the bees knees.
The whitespace thing just isn't an issue. You just can't do one-liners effectively, that's all.
I came to not notice the whitespace thing, but I think I only grew that tolerance after no longer hanging out with python fans. Because seriously, the patronizing tone they take, like yours, turned me way off.
In fact, there's still lame justifications going around about other warts about the language. Perl culture generally acknowledges that some things are a nasty crock, but in python, it's always a feature
I do suggest he tweak his attention span. To tune unhelpful people like yourself out.
Re:Python: Syntactically significant white-space
by
Yosho
·
· Score: 1
Mandrake did, last time I checked. Even if yours doesn't have it, what's so painful about opening up your favorite package manager and taking 30 seconds to install it?
-- Karma: Terrifying (mostly affected by atrocities you've committed)
Re:Python: Syntactically significant white-space
by
shutdown+-p+now
·
· Score: 1
Enter Ruby: Perl done right.
Re:Python: Syntactically significant white-space
by
FooBarWidget
·
· Score: 1
"what's so painful about opening up your favorite package manager and taking 30 seconds to install it?"
It's not about me, it's about my users. Try telling your grandma to install "Ruby".
Re:Python: Syntactically significant white-space
by
Yosho
·
· Score: 1
Well, my grandma could probably handle it, but mine builds her own computers rather than buying pre-built ones.
Even if she couldn't, though, I'd just tell her to install this. It's just as easy as installing any other program, really. You don't see people complaining that Java is unusuable just because it doesn't come installed by default on most computers.
And if your grandma is using Linux, I would imagine that she's computer-savvy enough to handle a package manager anyway.
-- Karma: Terrifying (mostly affected by atrocities you've committed)
Re:Python: Syntactically significant white-space
by
ultrabot
·
· Score: 1
In fact, there's still lame justifications going around about other warts about the language.
Still, there are sites like this that list flaws in the language, and the community tends to whine about the warts all the time. The warts are also going to be fixed. The whitespace issue is not considered a wart.
I do suggest he tweak his attention span. To tune unhelpful people like yourself out.
It's generally considered a good thing to try to avoid giving up immediately. It's an extremely important virtue for a programmer...
Re:Obligatory Futurama Quote
by
Bobke
·
· Score: 1
_Now_ we're talking about something dead.
PERL? WTF?
by
Anonymous Coward
·
· Score: 0
The language is called "Perl"!!!
What defines dying?
by
malverian
·
· Score: 5, Interesting
Perl still has a very active community with some very incredible and dedicated hackers. The main thing that keeps me coming back to Perl for personal projects is the fact that it's such a FUN language to program in.
I can think of many benefits to using Python and PHP in a work environment, but no matter how long I work with other languages, I always come running back to Perl when I'm in the mood for some highly caffeinated drinks and a late night of hacking. Say what you will about Python or PHP, but you probably can't say either is fun or enlightening to use.
I've found that Larry Wall is a very unique individual, and a lot of that is pervayed through the style of his programming language. In Perl I can say (figuratively).. "Go fetch the paper!" or "Can you get the paper?" and both of them work. While that might be a readability nightmare, it lets you be very creative with your code. And to some people, being creative is a nice release after the regimented, controlled environment we deal with in the workplace.
-- You're just mad because the voices in your head talk to me.
Re:What defines dying?
by
spikedvodka
·
· Score: 1
I just like being able to say "open FILE/tmp/foo or die;"
-- I will not give in to the terrorists. I will not become fearful.
I find python more fun, because it looks cleaner. It's got more structure. I'm a mathematician and my aesthetics may not be "normal", but to me something near-geometric is preferrable to the "tangle" I seem to get when programming perl. As far as perl dying is concerned, how is that community going? Is it shrinking? Is it aging in almost real time? If either of those are true, perl is dying.
I agree that most Perl code looks like shit. But I strongly disagree with Python's way of forcing everybody into the same shape.
You can write nicely geometric code in Perl though ( and I agree with you that good code should look geometric ). Have a look at some of my code on http://entropy.homelinux.org
I've never seen a good argument for one style over another; the fact that there are still 4 competing C (and Perl) indentation styles suggests there isn't any best one. You have to be able to read all of them, and, if you're going to contribute to other people's projects, write all of them as well. So having the choice just seems to add more scope for pointless flamewars, and force you to learn more. IME of course.
-- I am trolling
Re:What defines dying?
by
cloudmaster
·
· Score: 1
One of Perl's benefits is that it doesn't *force* structure. It also doesn't force lack of structure, though. If your code looks sloppy in Perl - or any other language - then you're a sloppy programmer, and it's your own fault.
When I hear forced structure, I generally think of Fortran. I dislike Fortran.:)
"The name is normally capitalized (Perl) when referring to the language, and uncapitalized (perl) when referring to the interpreter program itself since Unix-like filesystems are case sensitive. (There is a saying in the Perl community: "Only perl can parse Perl.") It is not appropriate to write "PERL"..." [according to Larry Wall at all.]
Sorry if I was unclear...I wasn't criticizing Mason at all, just pointing out the parent's irony of pointing to Mason as a great example of what can be done with perl CGI...when in fact, Mason hasn't supported Apache 2 so far. I agree that they've had a good reason not to support it, given the lack of a mod_perl for Apache2.
"The benefits of Python over Perl are large enough to make the install of python a requirement, and a criterion of choosing a service provider. At least if your programs are going to be larger than 200 lines or so."
If you're such a bad developer that you can't possibly write good, clean and maintainable code in Perl, then Python won't help you much.
Re:Great
by
Anonymous Coward
·
· Score: 0
The benefits of Python over Perl
haha...hahahahahaha...
Re:Great
by
Anonymous Coward
·
· Score: 1, Interesting
Although I've switched primarily to Ruby + fastcgi, I still use mod_perl because of CPAN. As a matter of fact, I also use Python because of Trac.
While going 100% with one language or tool or OS might be ideal, it just isn't practical for many of us.
There are so many useful modules in CPAN and I don't see Ruby or Python catching up in the next 2-3 years.
Perl5 might be ugly now when compared to newer languages, but I'll always be grateful for all the time-saving CPAN modules and the inspiration the language gave to Ruby.
PHRASE1 = NUM_BOT||' Bottles of Beer on the wall,';
PHRASE2 = NUM_BOT||' Bottles of Beer';
PHRASE3 = 'Take one down and pass it around';
DISPLAY(PHRASE1||PHRASE2);
DISPLAY(PHRASE3);
END;
PHRASE1 = 'No more Bottles of Beer on the wall, ';
PHRASE2 = 'No more Bottles of Beer';
PHRASE3 = 'Go to the store and buy some more';
DISPLAY(PHRASE1||PHRASE2);
DISPLAY(PHRASE3);
END BOTTLES;
-- Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
Some mod_perl info
by
programgeek
·
· Score: 5, Informative
You people are saying alot of stuff without even bothering to google it.
The following is taken from http://perl.apache.org/
"mod_perl is more than CGI scripting on steroids. It is a whole new way to create dynamic content by utilizing the full power of the Apache web server to create stateful sessions, customized user authentication systems, smart proxies and much more. Yet, magically, your old CGI scripts will continue to work and work very fast indeed. With mod_perl you give up nothing and gain so much!"
"mod_perl gives you a persistent Perl interpreter embedded in your web server. This lets you avoid the overhead of starting an external interpreter and avoids the penalty of Perl start-up time, giving you super-fast dynamic content.
As you'd expect from the Perl community, there are hundreds of modules written for mod_perl, everything from persistent database connections, to templating sytems, to complete XML content delivery systems. Web sites like Slashdot and Wired Magazine use mod_perl."
Yes, Slashdot does run on mod_perl.
A friend of mine uses mod_perl and the performance increase he gets is insane.
-- Georgia
Re:Some mod_perl info
by
Anonymous Coward
·
· Score: 0
Yes, Slashdot does run on mod_perl.
Given the prevalence of 503/501 errors on Slashdot and frequent breakdowns in general, I would NOT be showing it off as an example.
I'd be interested to know whether the same application coded as a CGI running under Apache::Registry runs any faster when coded as a mod_perl Apache::Request handler.
It really depends on the way you coded your CGI application. If you use CGI.pm, you probably load and have loaded quite a lot of bloat (despite the CGI.pm's AUTOLOADing features). Apache::Request is C library, so it is marginally faster than a script using CGI.pm.
Also, once you rewrite your application the Apache::Request way, you'll probably refactor it to be cleaner, leading to faster executions. Coding with mod_perl in mind lead to better code and faster applications for me. Since you know that your handlers will be executed multiple times, you cannot get away with fast hacking like you do with pure CGI.
If you're such a bad developer that you can't possibly write good, clean and maintainable code in Perl, then Python won't help you much.
Believe me, it does. In Python the good, clean, maintainable code practically writes itself. In Perl, the good, clean, maintainable code won't even *run*;-).
Even if the code was semantically "correct" and good, it would still be ugly and painful to write because of all the $@->.
What linux distribution installs perl, and not python, by default?
Just answering your question here; not trying to suggest one thing over another, but Debian and most Debian-based distributions do a minimal install of perl (perl-base) with the most basic core install while python is out in the cold. Lots of packages rely on perl to run pre/post install scripts. I am not sure if languages other than sh and perl are actually allowed for this task, so this fact may simply be an artifact of the packaging requirements/guidelines.
Aside from the perl binary and some very basic utility packages, there's not much of perl inside of perl-base, but it is sufficient to run a lot of self-contained perl scripts. Full fledged installations of neither perl nor python are part of the 'default' install though, but if you select certain tasks usually one or both will be installed as part of a dependency.
Is it dying? It it the end of fun?
by
rduke15
·
· Score: 4, Interesting
it's such a FUN language to program in
Exactly. But I guess that is what so many don't like. As Larry Wall said:
"In trying to make programming predictable, computer scientists have mostly succeeded in making it boring" -- Larry Wall, interview in The Perl Journal, vol. 1 issue 1.
I gess some prefer programming to be boring.
I don't.
Re:Is it dying? It it the end of fun?
by
Anonymous Coward
·
· Score: 0
Some prefer their software to run fast and their source code to be readable.
There's an old Chinese curse "may you live in interesting times". There was a copy of that somewhere in the kernel file (a.k.a. System file) for MacOS 7 that said "may you code in interesting times".
Languages are tools. I prefer mine to be predictable, allowing the real wizardry to be in what you do with them, not with knowing how it deals with some particular edge condition.
Even if the code was semantically "correct" and good, it would still be ugly and painful to write because of all the $@->.
If you put $@->. in your code, I sure understand why you find it painful:-)
# perl -e '$@->.' syntax error at -e line 1, near "->." Execution of -e aborted due to compilation errors.
Or with some more verbosity:
# perl -Mdiagnostics -e '$@->.' syntax error at -e line 1, near "->." Execution of -e aborted due to compilation errors (#1)
(F) Probably means you had a syntax error. Common reasons include:
A keyword is misspelled.
A semicolon is missing.
A comma is missing.
An opening or closing parenthesis is missing.
An opening or closing brace is missing.
A closing quote is missing.
Often there will be another error message associated with the syntax
error giving more information. (Sometimes it helps to turn on -w.)
The error message itself often tells you where it was in the line when
it decided to give up. Sometimes the actual error is several tokens
before this, because Perl is good at understanding random input.
Occasionally the line number may be misleading, and once in a blue moon
the only way to figure out what's triggering the error is to call
perl -c repeatedly, chopping away half the program each time to see
if the error went away. Sort of the cybernetic version of S<20
questions>.
Uncaught exception from user code:
syntax error at -e line 1, near "->." Execution of -e aborted due to compilation errors.
:-)
Re:dumb arse who didn't get the joke
by
Anonymous Coward
·
· Score: 0
Re:CGI - don't be absurd
by
cliveholloway
·
· Score: 1
CGI may be stupid and dead...
I think you need to readup on what the CGI actually is.
Your statement is as wrong as if you'd said that HTTP was dead when IE claimed the browser market.
PHP, ASP, Perl, Bash - and many other languages - can use the CGI to talk to web clients over HTTP.
I think what you were trying to say is that CGI scripting in Perl is stupid and dead. I'd even disagree with that to a degree, but that's probabl;y closer to what you meant.
cLive;-)
-- --
Trinity in high heels carrying a whip:
The donimatrix - there is no spoonerism
I don't think he meant "$@->" all together, I think he just meant using those characters separately often.
--
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
Re:Mason Support for mod_perl 2
by
AllDewedUp
·
· Score: 1
Mason has officially supported mod_perl 2 since version 1.27 (http://www.masonhq.com/code/history.html#v1.27).
Support for the namespace changes won't be implemented until mod_perl 2 is final (which it seems to be now), so I suppose that would be a lack of official support. However, it sounds like you were referring to pre-1.27 when Beau Cox released his special handler for mod_perl 2.
Gotta love the .sig
by
Anonymous Coward
·
· Score: 1, Informative
Chances are anyone that would blindly run perl from a.sig on Slashdot has already learned this the hard way:
Even if the code was semantically "correct" and good, it would still be ugly and painful to write because of all the $@->.
Isn't it more like $@%& ? You can almost think I wanted to type something else there - surely it is a sign...
Seriously, though, from the point of view of language design, Perl is simply awful. It's an incoherent, inconsistent, and higly unreadable language. Most of design decisions there simply don't make any sense. OOP system is just a hack, and most of language features are in fact little more than hacks. Frankly, it looks like something designed in one night by a lone hacker on a LSD trip, and then patched gradually to the state of usability.
Of course, Python isn't that much better, apart from being slightly more readable.
Even if the code was semantically "correct" and good, it would still be ugly and painful to write because of all the $@->.
What, my($object, $thingy, @args) = @_; is too complicated for you? Just because Perl *allows* one to use very short symbols for a lot of things doesn't mean you have to. So unless you're actually willing to argue that choice = a bad thing...
--
People replying to my sig annoy me. That's why I change it all the time.
Retreat to its original niche?
by
Julian+Morrison
·
· Score: 1
Perl had a niche before CGI. It was a general language for throwaway programs and system scripts. You could write simple, small apps and servers in it, by using CPAN to do 90% of the work for you. This also resulted in clean, readable code (the mess being hidden in the modules). My email is downloaded off pop3 and inserted into maildirs by a perl script I designed. It's short and simple, despite using a boatload of tricks to avoid memory leaks and lockups no matter what. It just runs, so I can ignore it.
I find that in its old niche, perl still reigns supreme. Modern deep, complex webapps may have moved beyond its sphere of competence, but I doubt I'll be uninstalling perl anytime soon.
merits of perl, the future of parrot
by
gregorlowski
·
· Score: 3, Insightful
Perl has a lot going for it. mod_perl and html::mason (used by/. and apache) together are a much more maintainable solution to large web apps than PHP, IMO. I had to maintain some really ugly old PHP code at my old job. Any language can get ugly if the coding style is ugly, but properly written html::mason does a lot more to separate Model, View, and Controller than any PHP solution I've seen.
I did a lot of perl programming back in the day. Although I still like it a lot (I think the DBI is one of the best database libraries out there), I do find myself working more and more in both python and ruby for rapid development.
If you love perl but sometimes get a headache from staring at long lines of code with lots of sigils, braces, and parentheses, take a look at ruby. From what I've seen of Perl6 so far, it will also clean up some syntax while retaining neat perlish tricks and adding a lot of advanced programming language features.
I have high hopes for the parrot project too. Maybe one day we'll all be able to write parts of our apps in ruby, python, perl6, ponie, and integrate them together on a common VM platform. I think this would be an incredible step for open source software development! Still, I'm not going to hold my breath waiting for this... it looks like this scripting nirvana is still pretty far off.
Unnecessary choice is bad, because it's making everything nonstandard. Choice is good, yes - but everyone having their own language is not good, a standard language is better. Perl gives you many ways to do things. This makes it easier to write, but far harder to read, because you need to know all the different ways. In the long run this tends to bite you.
-- I am trolling
is mod_perl 2 on on apache 2 faster than mod_perl
by
Hohlraum
·
· Score: 1
1 on apache 1.3.x for registry apps? we've got cgi's that run under mod_perl 1 on apache 1.3 and I'd been wondering if we would see any improved performance from switching to a 2.x setup with the registry cgis. (decreased memory usage would be considering a plus as well)
Actually, parrot is really coming along nicely it looks like. People are really starting to work on compilers to target parrot now too. It WILL be a scripting nirvana, just wait and see. In fact, don't wait, get involved; start hacking one whichever project you're interested it!
-- Sticking feathers up your butt does not make you a chicken - Tyler Durden
Re:CGI - don't be absurd
by
powerlord
·
· Score: 1
I agree with your feelings, but I think the feeling that "CGI is Dead" which seems to be bandied about is more a feeling that.Net, and Java (servlets/applets) are the "wave of the current and future"... not that I neccesarily agree.
I think that too many people, from C*Os to programmers tend to look at technology as a series of shiny things and assume that each new one is the be all and end all of creation (instead of just a tool with its own set of pros and cons in every situation).
'Course enough are also reactionary ludites that assume that everything they come across must be a nail since they know how to use a hammer... but thats another issue:)
-- This space for rent. All reasonable inquiries will be entertained at proprietors discretion.
Re:is mod_perl 2 on on apache 2 faster than mod_pe
by
adelton
·
· Score: 1
Apache 2 was faster than Apache 1.3 for me in general, so the answer is "probably yes".
However, I consider (Apache|ModPerl)::Registry.* harmfull in production environment. It makes you think you can get away with quick CGI-script coding and may hit unexpected problems on your way. So if you decide to switch to Apache 2 / mod_perl 2, why not rewrite the thing the Apache::Request(2?) way?
Perl not being used anymore?
by
Anonymous Coward
·
· Score: 0
At my previous job we used mod_perl (1 and 2[beta]). The excellent part about mod_perl is that it allows you to completely control Apache in every manner possible.
There are excellent performance benefits in writing Apache handlers... and mod_perl simply allows them to be written in perl.
The last application I developed handled multi-millions of records per day without flinching. There were dozens of users and several extremely complex equations and correlations done...
In the end, it outperformed the other attempts made at doing the same thing... and it was simple to maintain.
Since my departure (and that of the rest of the perl team)... the company decided to scrap perl and move completely to java (for unix systems). They're finding that getting rid of the several million lines of perl code and the hundred-or-so websites developed in mod_perl is likely to take them an eternity when rewriting in java.
Though I now develop in ASP.NET (C#, etc)... I still fondly remember my days as a perl developer. Being able to crank out an application in little to no time was amazing... and with the power of CPAN it's hard to compare any other language.
Re:Powerful
by
Anonymous Coward
·
· Score: 0
That Chad Kreimendahl guy is a real douche.
Re:Powerful
by
Anonymous Coward
·
· Score: 0
It's true - he's a big wet douche
Re:Powerful
by
Anonymous Coward
·
· Score: 0
I hate Chad more than syphilis.
Re:Powerful
by
Anonymous Coward
·
· Score: 0
Chad fantasizes about Wookies.
Re:Powerful
by
Anonymous Coward
·
· Score: 0
If you think Chad sucks, you should see his home page
Re:Slashdot Offshoring Myths
by
Winni-de-pu
·
· Score: 1
I have the same effects with the slash, but if you know it it is okay...
Although CGI is in its decline, it is still used plenty.
Using this argument makes little sense becasue CGI is quite irrelevant today. It is the kind of back-handed comment that people use about languages like COBOL.
The "death of CGI" rather than the fact it is still twitching is the real argument to use mod_perl over many of the alternatives. mod_perl is probably the most mature of all the non-CGI web application platforms--it pre-dates everything except perhaps PHP (which looks to have emerged at around the same time). J2EE, mod_python, ruby on rails and so on are great performers I'm sure, but mod_perl and PHP are much more established, and literally nothing beats the vast library offered through CPAN.
I totally agree with you about the fun factor though--for all the hype Java solutins get, Java is probably among the LEAST fun languages to use--perhaps it is better than straight C or FORTRAN bt I'd even rather program in VB. Perl does lack a mandatory structure, letting the coder create ghastly code, but it DOES give the disciplined coder the ability to right extremely maintainable code as well (my Perl code tends make Pascal look free-wheeling).
The basic truth is this--it doesn't matter what the language does to make code maintainable, a language needs to be "fun" to make developers the most productive. That is why there are millions of essential, popular scriptsout there written in Perl. I think if Apache2/mod_perl2 had a nice, refined graphical IDE it could kick major ass on Visual Studio/ASP.NET...
Re:Perl a dead language? NOT
by
Anonymous Coward
·
· Score: 0
How about a Perl script to find a girlfriend? (or boyfriend)
Beware mod_perl 2.0.0.
Perl is already up to 6.0 (almost) - best wait for mod_perl 6.0 to be released.
Nothing to see here, move along!
Who still uses Perl for web stuff?
> Isn't that a dead language kinda like Cobol?
...
I don't think so, netcraft didn't confirm anything like that
I don't suffer from insanity, I enjoy every minute of it.
I wonder if they will be able to squeeze this into Fedora Core 4 before the code freeze.
Overall a post with so much truth that it hurts. But, I disagree on one statement you made:
if someone with no education can do your job cheaper, you don't deserve your job
Not every job needs to be one that requires education. Many people do great work, without education- they jut have the skill and drive to do a better job than others.
I recently went from being a non-degreed schmuck, to one with a degree. This didn't make my work any better.
No reason to lie.
did you happen to look up at ANY slashdot URL:
/./comments.pl
hrmm... this kind of looks like a perl cgi, most likely living in mod_perl!
get a clue dumb arse.
int 20h;
Almost all of the comments criticizing Perl have been modded "Troll". Slashdot authors getting touchy?
I do not understand how anyone can suggest that PERL is a dead language. It is still one of the most powerful text processing languages out there, with the extensibility that allows it to do everything from performing network activities to CGI. Although CGI is in its decline, it is still used plenty.
Theres that and the fact that PERL is just a really fun language, very easy, and extremely free-flowing, which I personally think is a good thing.
Bah, mod_parrot is where its at.
http://www.smashing.org/mod_parrot/
I program my web application in Parrot.
Has anybody use mod_perl on Windows?
I'd be interesting to here how it went for you.
Out of curiosity, is this still the same threading model that's existed in Perl for some time? Or is it revamped? Because if it hasn't been updated, well, it's pretty much useless. I've done threading in perl, and every time you spawn a thread, a whole new interpreter is spawned. On top of this, there are many limitations on sharing data between threads (you can't share objects, for one thing).
It might as well be called forking, to be honest, because it doesn't really qualify as threading.
For people who are wondering what mod_perl is exactly: it's a way of integrating perl into Apache's webserver. I think the main advantage is that you don't have the overhead of firing up perl for each cgi-type request. The main gotchas, for the developers point of view, involve a little perl enviornment staying alive, when a perl script starts, runs, and stops, it cleans up after itself, but when it 'stays alive' inside apache, you have to make sure it's not accumulating too much memory cruft, that you're closing handles, etc etc.
This is what I know mostly by reputation, rather than direct experience, experts please feel free to correct me
--
#perl -e '$??s:;s:s;;$?::s;;=]=>%-{-|}&|`{;; y; -/:-@[-`{-};`-{/" -;;s;;$_;see'
mod_perl2 has been in development for years, still probably in some beta form. perl6 is now a four year old project with nothing much to show but a haskell testing platform.
sure. Some of us just *gasp* continue to use Perl 5. Amazing isn't it?
But, now we have to flash-cut our production systems, unless someone knows how to changes things to work under both namespaces...
With all due respect, no, nobody's switched to Ruby or Python, despite their merits. The number of programmers working in these languages is miniscule and there's virtually no commercial market for them. Perl at least was widely used at one time ... projects that would have been done in Perl in the gay 90s are now probably PHP, Java or C#.
I have not and I do not plan to.
As far as Apache is concerned - who is using Ruby/Python for CGI?
Also how is Perl6 a spectacular fuckup? It's been in development for a while because it introduces a lot of changes and I'm still doing fine with Perl5.6
Requesting shortage of crack amount handed out to moderators.
Yes, me. I'm the maintainer of a project which has about 30.000 lines of Perl code. And yes, the project is maintainable and the code is very much readable. The project is still under active development.
Furthermore, Perl has a bigger chance than Python of being installed on Linux distributions by default. This alone is a good reason to choose Perl over Python. Don't get me started about Ruby.
I've never played Doom3 and i'm not going to watch Star Wars. Damn wasted space, they should know better than posting stuff i'm not interested in!
- These characters were randomly selected.
For example, Mason is a pretty good tool for doing Perl-based web components.
So bitch about CGI if you wish, but that's not what Perl is for.
Sometimes it's best to just let stupid people be stupid.
It's not that Perl is good or bad by itself, the question is more like, you still that Perl is still good/better in comparision to Ruby, Tcl, Python, Haskell, OCaml, Mozart/Oz and others more.
I do realize, that sometimes comparing two languages is more like asking, is an elephant bigger or a girafe taller?
But honestly, if you are still to start learning would you still have picked Perl.
I picked Tcl and I have my reasons. (Tcl/Tk, Sqlite, event driven programming and OpenAcs). And my second choice would be ruby, I strongly like the OOP paradigm and as far as I know Ruby got better support for this paradigm, I'll probably learn ruby next, I believe one should learn a new language every now and then (it's a common advice, I didn't come up with it).
Supporting old system is good enough reason to learn Perl, but beside taking advantage of availbe libraries (and this is a HUGE good reason) I dont see any other reason to get excited over Perl.
I'm also developing a quite unique system, on the url you can read below my username, which is written in mod_perl.
The whole website is around 100'000 lines of library oriented perl code, and is imo very well structured, commented and maintained. It is more than a website though, it is basically a group management system, with all the needs of it.
For the casual viewer it may seem that the website lacks features and kind of no-confort one, but it actually has a wide array of tools to use.
It takes a man to suffer ignorance and smile
Be yourself no matter what they say
Furthermore, Perl has a bigger chance than Python of being installed on Linux distributions by default. This alone is a good reason to choose Perl over Python. Don't get me started about Ruby.
What linux distribution installs perl, and not python, by default?
The benefits of Python over Perl are large enough to make the install of python a requirement, and a criterion of choosing a service provider. At least if your programs are going to be larger than 200 lines or so.
Save your wrists today - switch to Dvorak
I work doing router and server admin.
The shortest path between "need" and "have" is usually a perl script. CPAN alone puts perl above anything else I know of.
"that's not encryption - it's a new perl script that I'm working on..." - from some Matrix parody
I've started to learn python twice. Each time I run into the concept of "Syntactically significant white-space" I run away screaming. Give me braces, damnit.
"that's not encryption - it's a new perl script that I'm working on..." - from some Matrix parody
Does anyone actually still use Perl? Isn't that a dead language kinda like Cobol?
Obligatory Futurama Quote:
Farnsworth: And this is my universal translator. Unfortunately so far it only translates into an incomprehensible dead language.
Cubert: Hello.
Universal Translator: Bonjour!
Farnsworth: Crazy gibberish!
(Source: A Clone Of My Own)
The language is called "Perl"!!!
Perl still has a very active community with some very incredible and dedicated hackers. The main thing that keeps me coming back to Perl for personal projects is the fact that it's such a FUN language to program in. I can think of many benefits to using Python and PHP in a work environment, but no matter how long I work with other languages, I always come running back to Perl when I'm in the mood for some highly caffeinated drinks and a late night of hacking. Say what you will about Python or PHP, but you probably can't say either is fun or enlightening to use. I've found that Larry Wall is a very unique individual, and a lot of that is pervayed through the style of his programming language. In Perl I can say (figuratively).. "Go fetch the paper!" or "Can you get the paper?" and both of them work. While that might be a readability nightmare, it lets you be very creative with your code. And to some people, being creative is a nice release after the regimented, controlled environment we deal with in the workplace.
You're just mad because the voices in your head talk to me.
See wikipedia.org/wiki/PERL#NAME:
..." [according to Larry Wall at all.]
"The name is normally capitalized (Perl) when referring to the language, and uncapitalized (perl) when referring to the interpreter program itself since Unix-like filesystems are case sensitive. (There is a saying in the Perl community: "Only perl can parse Perl.") It is not appropriate to write "PERL"
Look at what happened with the Great Namespace Change. You can't track that kind of thing and keep your rep.
Wait-and-release is sometimes a good policy.
I forget what 8 was for.
the word apache appears nowhere in the story summary.
"The benefits of Python over Perl are large enough to make the install of python a requirement, and a criterion of choosing a service provider. At least if your programs are going to be larger than 200 lines or so."
If you're such a bad developer that you can't possibly write good, clean and maintainable code in Perl, then Python won't help you much.
haha...hahahahahaha...
Although I've switched primarily to Ruby + fastcgi, I still use mod_perl because of CPAN. As a matter of fact, I also use Python because of Trac.
While going 100% with one language or tool or OS might be ideal, it just isn't practical for many of us.
There are so many useful modules in CPAN and I don't see Ruby or Python catching up in the next 2-3 years.
Perl5 might be ugly now when compared to newer languages, but I'll always be grateful for all the time-saving CPAN modules and the inspiration the language gave to Ruby.
The indentation is shot.i -548.html
Seehttp://www.99-bottles-of-beer.net/language-pl-
BOTTLES: PROC OPTIONS(MAIN);
DCL NUM_BOT FIXED DEC(3);
DCL PHRASE1 CHAR(100) VAR;
DCL PHRASE2 CHAR(100) VAR;
DCL PHRASE3 CHAR(100) VAR;
DO NUM_BOT = 100 TO 1 BY -1;
PHRASE1 = NUM_BOT||' Bottles of Beer on the wall,';
PHRASE2 = NUM_BOT||' Bottles of Beer';
PHRASE3 = 'Take one down and pass it around';
DISPLAY(PHRASE1||PHRASE2);
DISPLAY(PHRASE3);
END;
PHRASE1 = 'No more Bottles of Beer on the wall, ';
PHRASE2 = 'No more Bottles of Beer';
PHRASE3 = 'Go to the store and buy some more';
DISPLAY(PHRASE1||PHRASE2);
DISPLAY(PHRASE3);
END BOTTLES;
Get thee glass eyes, and, like a scurvy politician, seem to see things thou dost not.--King Lear
The following is taken from http://perl.apache.org/
"mod_perl is more than CGI scripting on steroids. It is a whole new way to create dynamic content by utilizing the full power of the Apache web server to create stateful sessions, customized user authentication systems, smart proxies and much more. Yet, magically, your old CGI scripts will continue to work and work very fast indeed. With mod_perl you give up nothing and gain so much!"
"mod_perl gives you a persistent Perl interpreter embedded in your web server. This lets you avoid the overhead of starting an external interpreter and avoids the penalty of Perl start-up time, giving you super-fast dynamic content.
As you'd expect from the Perl community, there are hundreds of modules written for mod_perl, everything from persistent database connections, to templating sytems, to complete XML content delivery systems. Web sites like Slashdot and Wired Magazine use mod_perl."
Yes, Slashdot does run on mod_perl.
A friend of mine uses mod_perl and the performance increase he gets is insane.
Georgia
If you're such a bad developer that you can't possibly write good, clean and maintainable code in Perl, then Python won't help you much.
;-).
Believe me, it does. In Python the good, clean, maintainable code practically writes itself. In Perl, the good, clean, maintainable code won't even *run*
Even if the code was semantically "correct" and good, it would still be ugly and painful to write because of all the $@->.
Save your wrists today - switch to Dvorak
What linux distribution installs perl, and not python, by default?
Just answering your question here; not trying to suggest one thing over another, but Debian and most Debian-based distributions do a minimal install of perl (perl-base) with the most basic core install while python is out in the cold. Lots of packages rely on perl to run pre/post install scripts. I am not sure if languages other than sh and perl are actually allowed for this task, so this fact may simply be an artifact of the packaging requirements/guidelines.
Aside from the perl binary and some very basic utility packages, there's not much of perl inside of perl-base, but it is sufficient to run a lot of self-contained perl scripts. Full fledged installations of neither perl nor python are part of the 'default' install though, but if you select certain tasks usually one or both will be installed as part of a dependency.
informative++
Exactly. But I guess that is what so many don't like. As Larry Wall said:
I gess some prefer programming to be boring.
I don't.
If you put $@->. in your code, I sure understand why you find it painful
see subject
+1 funny?
Neat.
CGI may be stupid and dead...
I think you need to readup on what the CGI actually is.
Your statement is as wrong as if you'd said that HTTP was dead when IE claimed the browser market.
PHP, ASP, Perl, Bash - and many other languages - can use the CGI to talk to web clients over HTTP.
I think what you were trying to say is that CGI scripting in Perl is stupid and dead. I'd even disagree with that to a degree, but that's probabl;y closer to what you meant.
cLive ;-)
-- Trinity in high heels carrying a whip: The donimatrix - there is no spoonerism
I don't think he meant "$@->" all together, I think he just meant using those characters separately often.
"[Regarding the 'cloud,'] ownership was what made America different than Russia." -- Woz
Mason has officially supported mod_perl 2 since version 1.27 (http://www.masonhq.com/code/history.html#v1.27). Support for the namespace changes won't be implemented until mod_perl 2 is final (which it seems to be now), so I suppose that would be a lack of official support. However, it sounds like you were referring to pre-1.27 when Beau Cox released his special handler for mod_perl 2.
Chances are anyone that would blindly run perl from a .sig on Slashdot has already learned this the hard way:
http://www.dlitz.net/stuff/malicious-perl-sig/
Seriously, though, from the point of view of language design, Perl is simply awful. It's an incoherent, inconsistent, and higly unreadable language. Most of design decisions there simply don't make any sense. OOP system is just a hack, and most of language features are in fact little more than hacks. Frankly, it looks like something designed in one night by a lone hacker on a LSD trip, and then patched gradually to the state of usability.
Of course, Python isn't that much better, apart from being slightly more readable.
Yep he knows they dont go together, but he put them like that to falsely reinforce his "python roxors, perl suxors!!!!1" post.
Bush and Blair ate my sig!
Secure connection: fatal error (10) from server
https://www.cyberarmy.net/
Transmissi on failure.
Even if the code was semantically "correct" and good, it would still be ugly and painful to write because of all the $@->.
What, my($object, $thingy, @args) = @_; is too complicated for you? Just because Perl *allows* one to use very short symbols for a lot of things doesn't mean you have to. So unless you're actually willing to argue that choice = a bad thing...
People replying to my sig annoy me. That's why I change it all the time.
Perl had a niche before CGI. It was a general language for throwaway programs and system scripts. You could write simple, small apps and servers in it, by using CPAN to do 90% of the work for you. This also resulted in clean, readable code (the mess being hidden in the modules). My email is downloaded off pop3 and inserted into maildirs by a perl script I designed. It's short and simple, despite using a boatload of tricks to avoid memory leaks and lockups no matter what. It just runs, so I can ignore it.
I find that in its old niche, perl still reigns supreme. Modern deep, complex webapps may have moved beyond its sphere of competence, but I doubt I'll be uninstalling perl anytime soon.
Perl has a lot going for it. mod_perl and html::mason (used by /. and apache) together are a much more maintainable solution to large web apps than PHP, IMO. I had to maintain some really ugly old PHP code at my old job. Any language can get ugly if the coding style is ugly, but properly written html::mason does a lot more to separate Model, View, and Controller than any PHP solution I've seen.
I did a lot of perl programming back in the day. Although I still like it a lot (I think the DBI is one of the best database libraries out there), I do find myself working more and more in both python and ruby for rapid development.
If you love perl but sometimes get a headache from staring at long lines of code with lots of sigils, braces, and parentheses, take a look at ruby. From what I've seen of Perl6 so far, it will also clean up some syntax while retaining neat perlish tricks and adding a lot of advanced programming language features.
I have high hopes for the parrot project too. Maybe one day we'll all be able to write parts of our apps in ruby, python, perl6, ponie, and integrate them together on a common VM platform. I think this would be an incredible step for open source software development! Still, I'm not going to hold my breath waiting for this... it looks like this scripting nirvana is still pretty far off.
Unnecessary choice is bad, because it's making everything nonstandard. Choice is good, yes - but everyone having their own language is not good, a standard language is better. Perl gives you many ways to do things. This makes it easier to write, but far harder to read, because you need to know all the different ways. In the long run this tends to bite you.
I am trolling
1 on apache 1.3.x for registry apps? we've got cgi's that run under mod_perl 1 on apache 1.3 and I'd been wondering if we would see any improved performance from switching to a 2.x setup with the registry cgis. (decreased memory usage would be considering a plus as well)
(This is from masonhq.)
You don't think I typed that from memory, did you?
I forget what 8 was for.
Sticking feathers up your butt does not make you a chicken - Tyler Durden
I agree with your feelings, but I think the feeling that "CGI is Dead" which seems to be bandied about is more a feeling that .Net, and Java (servlets/applets) are the "wave of the current and future" ... not that I neccesarily agree.
... but thats another issue :)
I think that too many people, from C*Os to programmers tend to look at technology as a series of shiny things and assume that each new one is the be all and end all of creation (instead of just a tool with its own set of pros and cons in every situation).
'Course enough are also reactionary ludites that assume that everything they come across must be a nail since they know how to use a hammer
This space for rent. All reasonable inquiries will be entertained at proprietors discretion.
Apache 2 was faster than Apache 1.3 for me in general, so the answer is "probably yes".
However, I consider (Apache|ModPerl)::Registry.* harmfull in production environment. It makes you think you can get away with quick CGI-script coding and may hit unexpected problems on your way. So if you decide to switch to Apache 2 / mod_perl 2, why not rewrite the thing the Apache::Request(2?) way?
http://jobs.perl.org/about/stats
BOOYAKASHOT.
At my previous job we used mod_perl (1 and 2[beta]). The excellent part about mod_perl is that it allows you to completely control Apache in every manner possible.
There are excellent performance benefits in writing Apache handlers... and mod_perl simply allows them to be written in perl.
The last application I developed handled multi-millions of records per day without flinching. There were dozens of users and several extremely complex equations and correlations done...
In the end, it outperformed the other attempts made at doing the same thing... and it was simple to maintain.
Since my departure (and that of the rest of the perl team)... the company decided to scrap perl and move completely to java (for unix systems). They're finding that getting rid of the several million lines of perl code and the hundred-or-so websites developed in mod_perl is likely to take them an eternity when rewriting in java.
Though I now develop in ASP.NET (C#, etc)... I still fondly remember my days as a perl developer. Being able to crank out an application in little to no time was amazing... and with the power of CPAN it's hard to compare any other language.
I have the same effects with the slash, but if you know it it is okay...
Although CGI is in its decline, it is still used plenty.
Using this argument makes little sense becasue CGI is quite irrelevant today. It is the kind of back-handed comment that people use about languages like COBOL.
The "death of CGI" rather than the fact it is still twitching is the real argument to use mod_perl over many of the alternatives. mod_perl is probably the most mature of all the non-CGI web application platforms--it pre-dates everything except perhaps PHP (which looks to have emerged at around the same time). J2EE, mod_python, ruby on rails and so on are great performers I'm sure, but mod_perl and PHP are much more established, and literally nothing beats the vast library offered through CPAN.
I totally agree with you about the fun factor though--for all the hype Java solutins get, Java is probably among the LEAST fun languages to use--perhaps it is better than straight C or FORTRAN bt I'd even rather program in VB. Perl does lack a mandatory structure, letting the coder create ghastly code, but it DOES give the disciplined coder the ability to right extremely maintainable code as well (my Perl code tends make Pascal look free-wheeling).
The basic truth is this--it doesn't matter what the language does to make code maintainable, a language needs to be "fun" to make developers the most productive. That is why there are millions of essential, popular scriptsout there written in Perl. I think if Apache2/mod_perl2 had a nice, refined graphical IDE it could kick major ass on Visual Studio/ASP.NET...
How about a Perl script to find a girlfriend? (or boyfriend)