Beta

×

Welcome to the Slashdot Beta site -- learn more here. Use the link in the footer or click here to return to the Classic version of Slashdot.

Thank you!

Before you choose to head back to the Classic look of the site, we'd appreciate it if you share your thoughts on the Beta; your feedback is what drives our ongoing development.

Beta is different and we value you taking the time to try it out. Please take a look at the changes we've made in Beta and  learn more about it. Thanks for reading, and for making the site better!

cancel ×

283 comments

Sorry! There are no comments related to the filter you selected.

$_ to that? (3, Funny)

Anonymous Coward | about a month ago | (#47300973)

Congregation: $_
Pastor: $_.

Re:$_ to that? (-1)

Anonymous Coward | about a month ago | (#47301463)

Is this some sort of thinly-veiled, implicit slur against the role of transgendered people within the Perl 6 community?

Yeah, the creator of Pugs [wikipedia.org] (the most successful Perl 6 system ever) has changed her gender. Do you have a problem with that? In case you didn't know, she's been called one of the "ten greats of Taiwanese computing".

The Perl 6 community isn't like the Ruby community. They aren't a bunch of immature men who seek to hate and demonize women, likely out of latent homosexuality. The people of Perl 6 are tolerant and accepting. They want you to be who you really are, and they want you to help contribute to the greatness that they're building. You can be a man, or a woman, or both, or neither, or anything in between or anything else, really. The people working on Perl 6 don't care. It's all about great software, not discrimination and hatred. Discrimination and hatred have no place in the modern world. That's why we don't find them when working with Perl 6. Perl 6 is about love, care, tolerance and friendship. It's not about making people feel bad just because they are who they are.

But how do you KNOW she's a witch? (1)

Anonymous Coward | about a month ago | (#47302127)

Witch hunters see witches everywhere. All I saw up there might have had something to do with religion, but then again I don't do Perl.

Re:$_ to that? (3, Insightful)

Anonymous Coward | about a month ago | (#47302301)

The people of Perl 6 are tolerant and accepting.

That's quite a broad brush you're painting with there.

Discrimination and hatred have no place in the modern world.

Agreed.

Perl 6 is about love, care, tolerance and friendship.

Now I think you're getting carried away... I thought it was a multi-purpose scripting language, not a big hug.

sure you want to go with 'undead' ? (3, Funny)

mooingyak (720677) | about a month ago | (#47300999)

It means that the uninfected humans have to shoot it in the head. Or stake it through the heart. And quickly, before things get worse.

Re:sure you want to go with 'undead' ? (0)

Anonymous Coward | about a month ago | (#47301005)

Think more along the lines of a utilitarian, single minded focus plodding along despite all rot.

Re:sure you want to go with 'undead' ? (2)

Chewbacon (797801) | about a month ago | (#47301069)

What about "the rumor of perl's death has been greatly exaggerated?"

Re:sure you want to go with 'undead' ? (1)

minstrelmike (1602771) | about a month ago | (#47301197)

What about "the rumor of perl's death has been greatly exaggerated?"

And you heard it here on slashdot first.

Re:sure you want to go with 'undead' ? (1)

nitehawk214 (222219) | about a month ago | (#47301373)

What about "the rumor of perl's death has been greatly exaggerated?"

And you heard it here on slashdot first.

Yeah, its only Mostly Dead.

Re:sure you want to go with 'undead' ? (0)

Anonymous Coward | about a month ago | (#47301659)

So it's an ex-ex-Parrot [parrot.org] ?

Re:sure you want to go with 'undead' ? (2)

NoNonAlphaCharsHere (2201864) | about a month ago | (#47301331)

Actually, it's a misquote. The original quote is "Perl is death".

Re:sure you want to go with 'undead' ? (4, Funny)

narcc (412956) | about a month ago | (#47301763)

Slashdot reminds me of the townspeople in "The Simpsons" the way the majority opinion changes.

It wasn't that long ago that Perl was a darling, loved by all, with indecipherable code flowing freely in sigs and comments. Many even seemed to take pride in creating and sharing the most obtuse code imaginable.

Now it's, apparently, the worst thing ever that no one in their right mind would use for even the most trivial task.

Oh, Slashdot. When will you build a monorail?

Re:sure you want to go with 'undead' ? (2)

dmbasso (1052166) | about a month ago | (#47302229)

[...] code [...] in sigs and comments. [...] Now it's, apparently, the worst thing [...]

They tried understanding their own sigs after some time.

2005 eh? (4, Interesting)

jandrese (485) | about a month ago | (#47301009)

I don't think we're ever going to get as clear of an example of the second system effect [wikipedia.org] as Perl 6. If you asked me back in 2005 if I thought it was going to take more than a decade for the next Perl version bump, I would have said no way. Now I'm wondering if Larry and company shouldn't just ditch Perl 6 and come out with Perl 7, that is basically just Perl 5 with some tweaks to make complex data structures less of a nightmare and better integrate the object model, plus some tweaks around the edges like the implicit /x switch on regular expressions.

Re:2005 eh? (2)

mooingyak (720677) | about a month ago | (#47301047)

I always thought Perl 6's major problem was a lack of backward compatibility to Perl 5.

Re:2005 eh? (1)

Rinikusu (28164) | about a month ago | (#47301055)

There's a Perl 6? When the fuck did this happen?

Re:2005 eh? (0)

rubycodez (864176) | about a month ago | (#47301125)

it hasn't yet, since 2000 Larry and the Perltards jacking around with Perl 6 specs and still it's in development with no production release. In the past we'd say Perl 6 was like Duke Nukem Forever, except DNF finally got released so that joke's gone

Re:2005 eh? (4, Funny)

ArcadeMan (2766669) | about a month ago | (#47301177)

How about "Perl 6 is DNF's retarded cousin?"

Re:2005 eh? (1)

rubycodez (864176) | about a month ago | (#47301323)

yes but undead. DNF's undead retarded cousin.

Re:2005 eh? (1)

TWX (665546) | about a month ago | (#47301433)

Unfortunately, those that ultimately ended up with the Duke Nukem rights didn't know that Duke Nukem Forever was never supposed to be released, and the point of calling it "Duke Nukem Forever" was itself the joke... Lacking this sense of humor they decided to develop and release something anyway.

Unfortunately Larry Wall and company don't have that excuse.

Re:2005 eh? (0)

Anonymous Coward | about a month ago | (#47302017)

Perl 6 and PHP 6, languages of choice on GNU/HURD.

Re:2005 eh? (1)

K. S. Kyosuke (729550) | about a month ago | (#47301093)

I don't think we're ever going to get as clear of an example of the second system effect as Perl 6.

I think R6RS might qualify as well. Damn those sixes...

Perl 6ers just can't get shit done. (3, Insightful)

Anonymous Coward | about a month ago | (#47301141)

I don't think there's a second-system effect going on with Perl 6. Every two or three years some new team has come along and tried to implement it, only to totally fail and produce nothing usable. These people didn't implement Perl 5, so I don't think we can say that Perl 6 is a second attempt for them.

These Perl 6ers have just continually done stupid shit with half-assed virtual machines and intermediate languages, rather than getting real work done.

For fuck's sake, just look at the approaches that have always worked in the past:

- Perl 5 and earlier: An interpreter written in C.

- Python: An interpreter written in C.

- Ruby: An interpreter written in C.

- Lua: An interpreter written in C.

- Tcl: An interpreter written in C.

- PHP: An interpreter written in C.

- UNIX shells: Interpreters written in C.

The lesson should be crystal-fucking-clear: write an interpreter in C. That's all the Perl 6ers need to do, but for some reason they just won't do it.

No more Parrot. No more crap written in Haskell. No more stupid intermediate languages. The Perl 6ers just need to cut out the crap, and do things right for a change.

Re:Perl 6ers just can't get shit done. (1)

Anonymous Coward | about a month ago | (#47301225)

Thank you, Saul Tigh.

Re:Perl 6ers just can't get shit done. (1)

Anonymous Coward | about a month ago | (#47301475)

except it's not true that all working interpreters are direct c interpreters.
plan 9's rc implements a virtual machine (which it even bootstraps) and
interprets the virtual machine. the interpreter is however c.

it's interesting to note that the vm is dead simple and only implements
instructions an rc interpreter might need. but it is a vm.

so perhaps the failure is one of humility. parrot got too huge, and wasn't
even the point of the project.

Re:Perl 6ers just can't get shit done. (0)

Anonymous Coward | about a month ago | (#47301579)

And who actually uses rc? Nobody. Just like Perl 6.

Re:Perl 6ers just can't get shit done. (1)

cream wobbly (1102689) | about a month ago | (#47301663)

How about working and in reasonably widespread use? Y'know, so that you can name someone who's used it.

Re:Perl 6ers just can't get shit done. (1)

TWX (665546) | about a month ago | (#47301519)

- Perl 5 and earlier: An interpreter written in C.

- Python: An interpreter written in C.

- Ruby: An interpreter written in C.

- Lua: An interpreter written in C.

- Tcl: An interpreter written in C.

- PHP: An interpreter written in C.

- UNIX shells: Interpreters written in C.

So what was C written in?

Re:Perl 6ers just can't get shit done. (2)

UnknownSoldier (67820) | about a month ago | (#47301589)

> So what was C written in?

B, which was a stripped down version of BCPL [wikipedia.org] , and then later C.

Re:Perl 6ers just can't get shit done. (2)

cream wobbly (1102689) | about a month ago | (#47301683)

- C: A compiler written in C

(I know, originally it was written in BCPL. But the popular implementations compile themselves.)

Re:Perl 6ers just can't get shit done. (3, Insightful)

Beck_Neard (3612467) | about a month ago | (#47301727)

You're implying that C-based interpreters are quicker and easier to develop, but that's patently not the case. Just look at the recent huge surge of LLVM-based JIT languages that have been developed extremely rapidly and in high-level languages. C is probably a poor choice now that good alternatives really exist.

Maybe the problem isn't the choice of language. Maybe the problem is that the designers were incompetent.

Perl6 vs. Perl5 (2)

oneiros27 (46144) | about a month ago | (#47301259)

So a few years ago, a bunch of people decided that there was no point in waiting for Perl6, and started back porting the features they liked into Perl5.

And to deal with the whole issue of the Perl6 syntax not being compatible w/ Perl5, they've added 'use feature' where you can tell it which features to enable. (or specify a version number to turn on a whole bunch of things)

So, you want postfix dereferencing [perltricks.com] ? Then use perl 5.20, and enable the feature. (although, I believe it's currently enabled via 'experimental [metacpan.org] ', so people know they're enabling a feature that may change)

Re:Perl6 vs. Perl5 (1)

frank_adrian314159 (469671) | about a month ago | (#47301631)

Oh my God! Is PERL really competing for worst language with Brainf*ck? After reading the article on the operator mentioned, I can only assume so. I can't believe with all of the syntax backward-compatibility crap they've bolted on they couldn't just have cleaned up the syntax. Thus, my assumption is the only reasonable explanation. Or maybe brain damage... I hear you get that from PERL.

Re:2005 eh? (1)

megalomaniacs4u (199468) | about a month ago | (#47301449)

Come on it took ages for perl4 to die... This is normal.

Re:2005 eh? (0)

Anonymous Coward | about a month ago | (#47301459)

So Perl 6 is like the Vista of programming languages.

"Undead" doesn't mean vibrant, though. (4, Interesting)

Anonymous Coward | about a month ago | (#47301035)

Maybe Perl isn't completely "dead", but it sure as fuck isn't as vibrant of a scene as it once was.

In the 1990s, Perl was THE BIG THING . It was cool. It was trend-setting. It was what let average programmers and sys admins become superheroes, and it let good and great programmers and sysadmins become ABSOLUTE GODS .

Knowing Perl was what got you jobs. Knowing Perl was what let you get the hard work done fast. Knowing Perl was essential. If you didn't know Perl, you were SHIT IN A URINAL .

Perl's got some fierce competitors now. Python can do everything Perl can do, but with a way cleaner syntax. Ruby isn't as capable as Perl or Python, but it has a religious aspect to it that makes some hipsters go absolutely batshit crazy for it. Perl just can't compete against them.

Yeah, Perl isn't dead, and there are a lot of people who still use it today. But let's not kid ourselves, it's not the 1990s. It's not the GLORY DAYS OF PERL , when it ruled the roost.

Re:"Undead" doesn't mean vibrant, though. (2)

al0ha (1262684) | about a month ago | (#47301159)

I don't know about Python, I could never get used to indentation to represent blocks of code, too easy to get lost. { } makes much more sense to me...

Re:"Undead" doesn't mean vibrant, though. (4, Insightful)

UnknownSoldier (67820) | about a month ago | (#47301671)

One of the biggest problems with Python is that you can't email people code without it fucking with the formatting.

Any language design that relies on whitespace as being important is brain-dead.

Re:"Undead" doesn't mean vibrant, though. (3, Interesting)

Anonymous Coward | about a month ago | (#47302063)

I've never had issues with emailing python code between people within my research group and those outside of it from time to time. Maybe that is because we standardize on using spaces instead of tabs and the email programs don't strip that when sending just text emails. If you are sending something more complex then a dozen lines you could/should just send it as an attachment anyway. Or if you don't keep sensible line lengths, as I've had some email programs of yore insert linebreaks in a bunch of places, and that didn't matter what language you tried emailing if you let the lines get too wide.

Re:"Undead" doesn't mean vibrant, though. (1)

j127 (3658485) | about a month ago | (#47302085)

That is a really easy problem to solve: You can just set the font of the code to monospaced in the email and the indentation will be preserved. Or send the email as plain text. Or link to a Gist. Most editors have a plugin to post selections to Gists. Or attach the code as a text file.

Re:"Undead" doesn't mean vibrant, though. (4, Interesting)

mattack2 (1165421) | about a month ago | (#47301623)

Python can do everything Perl can do, but with a way cleaner syntax.

If only I could turn off indentation==scope. I would pay $20 for this ability (to work in every interpreter, not some special one off interpreter just for me).

Even *with* that limitation (and yes, I know a million people will respond saying it's oh so great and I just don't get it), I still think Python is pretty decent.. Though it seems to have (seemingly) superfluous colons in a few places, which reminds me of Pascal or BASIC.

Re:"Undead" doesn't mean vibrant, though. (1, Insightful)

cream wobbly (1102689) | about a month ago | (#47301775)

Pretty much everything I used to do in Perl I can do in Bash now. (Except, that is, perplex the reader with inscrutible gibberish.)

It should be dead (1, Insightful)

Aethedor (973725) | about a month ago | (#47301101)

Whatever it is now, it should be dead. For the simple reason that Perl allows this kind of code:

$_='while(read+STDIN,$_,2048){$a=29;$b=73;$c=142;$t=255;@t=map{$_%16or$t^=$c^=( $m=(11,10,116,100,11,122,20,100)[$_/16%8])$t^=(72,@z=(64,72,$a^=12*($_%16 -2?0:$m&17)),$b^=$_%64?12:0,@z)[$_%8]}(16..271);if((@a=unx"C*",$_)[20]&48){$h =5;$_=unxb24,join"",@b=map{xB8,unxb8,chr($_^$a[--$h+84])}@ARGV;s/...$/1$&/;$ d=unxV,xb25,$_;$e=256|(ord$b[4])

Re:It should be dead (0)

al0ha (1262684) | about a month ago | (#47301131)

So what is your point?

Re:It should be dead (5, Insightful)

preaction (1526109) | about a month ago | (#47301155)

Shall we drag out all the other obfuscated code contests and judge all languages guilty by the most heinous crimes committed with them? Remember that C and C++ give us Windows.

Re:It should be dead (1)

l0ungeb0y (442022) | about a month ago | (#47301315)

Frankly, this is the EXACT sort of shit coding that made me hate Perl and glad to see it go. Because I have seen so many examples of coding not too dissimilar to that. With Perl it has always seemed there is an ongoing contest among developers to see how arcane and unreadable they could make their code to show their "cred". Perl can go to hell, it's developer base can go fuck themselves and frankly the world will be a much better place as soon as that language is dead.

Re:It should be dead (1)

cream wobbly (1102689) | about a month ago | (#47301807)

While the GGP could have said the same about pretty much every language, there's definitely an ongoing competition to see who can win at grokking $_.

Re:It should be dead (2)

zippthorne (748122) | about a month ago | (#47301911)

A language that is expressive enough to allow you to write code that is concise and understandable (but no more concise. Cutting out verbosity is only good when it improves legibility) is going to give you enough of a dialect to make some truly twisted and illegible statements that are, nevertheless, still valid code.

I don't think we should blame the language for being powerful enough that an evil programmer can be unfathomably evil, if it also enables a just programmer to be eminently understandable.

Re:It should be dead (3, Insightful)

mi (197448) | about a month ago | (#47301179)

You can write C-code obscurely too. But, somehow, Perl seems to encourage this sort of thing... 20 years ago my CS-professor dismissed Perl as a "write-only" language — since then my conviction of him being right has only grown.

Re: obfuscation example (4, Insightful)

Anonymous Coward | about a month ago | (#47301497)

I agree that this (truncated) example is terrible, but it's clearly obfuscation for obfuscation's sake. If you manually insert whitespace and newlines, the above example is easy to read except for a few deliberate obfuscation techniques like hard-to-follow operator chaining and nested assignment.

Most modern languages allow operator chaining, so things like "$t ^= $c ^= (...) " are not a problem with perl per-se. To make this more readable, all you have to do is decompose it into its component operators, following the rules of operator precedence: "{ $c ^= (...); $t ^= c; }". Most modern languages also allow nested assignment, so things like "if ((@a = ...)[20] & 48)" are allowed. Again, if you want to make it more maintainable, you can write it as: "@a = ...; if (@a[20] & 48)". Once we've removed those types of issues from your example, you're only left with issues related to lack of pretty-printing (includes the fact that nobody but Larry Wall truly understands perl's operator prededence rules), and some surprising things that happen because of implicit variables and dynamic scoping.

IMHO perl's greatest fault is that there is no round-trip-capable pretty-printer. If Perl shipped with a pretty-printer, and if that pretty printer included an option to explicitly parenthesize operators and insert omitted implicit variables, then people could use the tool to read and understand poorly-written perl-snippets, and the only real fault left would be the fact perl uses dynamic scoping by default.

Re:It should be dead (0)

Anonymous Coward | about a month ago | (#47301531)

Perl is the regex match function wrapped in a scripting language. Many programming languages now feature regex as a core API (see C#). ...which means Perl really doesn't have much to offer these days. You can't write anything more complex than a text transform in it so it's really more like an XSLT that's impossible to read. ...and no, "impossible to read" is not a desirable feature.

Re:It should be dead (1)

nitehawk214 (222219) | about a month ago | (#47301591)

While I do not particularly care for perl... shit programmers will write shit code in whatever language they are given. It isnt the language's fault they are shit programemrs. (though languages like perl are more than happy to give programmers as much rope as they would like)

My real problem with perl is that the fucking camel advocates bad programming style and hard to write code. I think snippets like yours come about because first time programmers read the camel and instantly became bad programmers. Larry effectively made people worship doing "neat tricks" as a style. It isn't the language, its the culture of lazy coding that the language grew out of.

Groovy, Python, and friends could have become the same pile, but at least they have examples and books that are written with style.

Yes, Perl is indeed dead and rotting (1, Interesting)

rubycodez (864176) | about a month ago | (#47301107)

Larry killed Perl, 14 years and counting and still no Perl 6 production release.

Meanwhile, Perl 5 being phased out of system building / admin tools and web frameworks. Even Perl 5 is dying.

Re:Yes, Perl is indeed dead and rotting (4, Informative)

cruff (171569) | about a month ago | (#47301121)

Meanwhile, Perl 5 being phased out of system building / admin tools and web frameworks. Even Perl 5 is dying.

Not for me, I write new Perl 5 code all the time. Get some real useful work done with it too.

Re:Yes, Perl is indeed dead and rotting (2, Insightful)

rubycodez (864176) | about a month ago | (#47301135)

some people still write new COBOL too

sure, can write good stuff with it, but it is passing

Re: Yes, Perl is indeed dead and rotting (1)

AcerbusNoir (1257586) | about a month ago | (#47301239)

Great and wise are you.

Re:Yes, Perl is indeed dead and rotting (1)

rrohbeck (944847) | about a month ago | (#47301277)

You'd be surprised how many software packages have a complete Perl under the hood.

Re:Yes, Perl is indeed dead and rotting (1)

rubycodez (864176) | about a month ago | (#47301299)

no I wouldn't, quite familar with that in both Linux and BSD lands

just last week had to install some nagios nrpe package that had some Perl library requirements, and it was hell first trying the one from repository, then a couple alternative CPAN ones, and finally finding the actual POS that would work.

Re:Yes, Perl is indeed dead and rotting (2)

TWX (665546) | about a month ago | (#47301697)

wouldn't that be a Perl under the shell?

*ducks*

Re:Yes, Perl is indeed dead and rotting (2)

UrsaMajor987 (3604759) | about a month ago | (#47301317)

Same here. The great thing about Perl is not all the things you can do with it, but all the things you don't have to do because there is CPAN module that already does what you want. IMHO, the most important characteristic of a language is its' usefulness and Perl is very useful indeed.

Re:Yes, Perl is indeed dead and rotting (2)

John Bokma (834313) | about a month ago | (#47301645)

Same here. I am a freelance Perl programmer and for the past 12+ months have been very busy with coding in ... Perl. More so than when Perl was considered the "glue that holds the web together". And no, it isn't maintenance of old code.

A number of people who left Perl and declared it dead are the ones that couldn't program in Perl to begin with (never learnt the language, thought it could be learned by trial and error), and most likely still can't in whatever they consider fashionable right now.

Re:Yes, Perl is indeed dead and rotting (1)

Anonymous Coward | about a month ago | (#47302087)

YOU CAN HAVE MY PERL V5x
when you pry it out of my
dead cold fingers
It does what I need it to do
quickly - simply - sucks web pages,
accepts posts, installs in a blink,
handles flat files, indexed files
and weenies who need more db capabilities like OraPerl or other cluster-screwball security/debugging nightmares should probably stick to windows... ...having written software since 1979 in more than 20 languages amounting to a mountain of code that is higher than any 10 of you - combined - along with over 15,000 web pages AFTER that career - I have a wee bit of experience and perl v 5x is a delight...

Ruby is fast behind. (0)

Anonymous Coward | about a month ago | (#47301213)

I've watched Perl die out over the past 15 years, and I'm seeing the exact same trend happening with Ruby. But with Ruby it's happening a lot faster. Ruby was adopted faster, and it's being discarded faster. People have lost patience with its shitty performance, and especially the shitty, shitty people involved with its community. Everybody is tired of dealing with shithead know-it-all Ruby hipsters who write horrible code. In fact, I would not be surprised at all if I'm still dealing with Perl 5 code 20 years from now, when nobody is still using Ruby, but everybody still remembers how shitty Ruby code and Ruby programmers were.

Re:Ruby is fast behind. (1)

rubycodez (864176) | about a month ago | (#47301307)

maybe in the americas that's true, not true elsewhere in the world *shrug*

Re:Ruby is fast behind. (1)

preaction (1526109) | about a month ago | (#47301333)

There are developers who ride the wave of new languages (who appear to be surfing towards Go and Rust now that JavaScript has crested). In that respect, Perl has long since settled down, and Ruby is on the wave's trailing end. It could be said that now the hype wave is over, people can get real stuff done in the language.

Re: Ruby is fast behind. (0)

Anonymous Coward | about a month ago | (#47301445)

maybe rails, but vagrant and chef arent going away anytime soon

Re:Yes, Perl is indeed dead and rotting (4, Informative)

Sez Zero (586611) | about a month ago | (#47301263)

Perl 5.20 was just released [perlnews.org] and "represents approximately 12 months of development since Perl 5.18.0 and contains approximately 470,000 lines of changes across 2,900 files from 124 authors."

That doesn't seem to bad to me, but I'm not sure how that number of core release authors compares to other languages like Python or Ruby.

Re:Yes, Perl is indeed dead and rotting (5, Interesting)

mbadolato (105588) | about a month ago | (#47301375)

More telling is how utterly fast Perl is compared to the other languages. I've run most of the sample files from this language shootout [raid6.com.au] and had remarkably similar results to what they list there.

The Perl version performed on par with the C and C versions, and it's growth/memory usage stayed pretty consistent throughout. The other languages were horrid. They took much longer, and their memory usage grew significantly during the run.

I use Perl still when doing scripting tasks. I love Perl, always have. I don't, however, necessarily think it's the right choice for building a medium to large web-based application any more. Sure the performance is there, and there are some great frameworks like Catalyst and Dancer, but to me, they still feel a bit antiquated to some of the other technologies I've used. Plus installing tons of CPAN modules can get a little trying at times.

Re:Yes, Perl is indeed dead and rotting (0)

Anonymous Coward | about a month ago | (#47301561)

I don't, however, necessarily think it's the right choice for building a medium to large web-based application any more. Sure the performance is there, and there are some great frameworks like Catalyst and Dancer, but to me, they still feel a bit antiquated to some of the other technologies

Have you looked at Mojolicious? [mojolicio.us]

From that page:

  1. An amazing real-time web framework, allowing you to easily grow single file Mojolicious::Lite prototypes into well structured web applications.
  2. Powerful out of the box with RESTful routes, plugins, commands, Perl-ish templates, content negotiation, session management, form validation, testing framework, static file server, first class Unicode support and much more for you to discover.
  3. Very clean, portable and Object Oriented pure-Perl API without any hidden magic and no requirements besides Perl 5.10.1 (although 5.18+ is recommended, and optional CPAN modules will be used to provide advanced functionality if they are installed).
  4. Full stack HTTP and WebSocket client/server implementation with IPv6, TLS, SNI, IDNA, Comet (long polling), keep-alive, connection pooling, timeout, cookie, multipart, proxy and gzip compression support.
  5. Built-in non-blocking I/O web server, supporting multiple event loops as well as optional preforking and hot deployment, perfect for embedding.
  6. Automatic CGI and PSGI detection.
  7. JSON and HTML/XML parser with CSS selector support.
  8. Fresh code based upon years of experience developing Catalyst.

Re:Yes, Perl is indeed dead and rotting (0)

ThePhilips (752041) | about a month ago | (#47302113)

More telling is how utterly fast Perl is compared to the other languages.

The test is ridiculous.

In any (Perl) program more complicated that helloworld (and in Perl terms that could be already pretty sophisticated piece of code) most of the time would be spent on calling functions.

All the test accomplishes, is testing how well Perl itself is implemented. And that we know already. (This test is basically biased against Java, or in fact, any language with immutable strings. Java just tops it off with slow IO.)

I use Perl still when doing scripting tasks. I love Perl, always have. I don't, however, necessarily think it's the right choice for building a medium to large web-based application any more. Sure the performance is there [...]

That's the problem: performance of Perl5 with any kind of largish framework would be pretty miserable because Perl's interpretation model is not designed to handle it.

Literally all interpreters decades ago went with p-code interpreters [wikipedia.org] - and only Perl5 is still stuck with the traditional interpretation by (slightly optimized) syntax tree [cpan.org] .

In my personal tests I have seen a clear dependency between performance and the size of optree: larger the optree, slower the code.

With any kind of sizable framework, the optree would be enormous. While bytecode allows for more aggressive optimization (inlining or IPO or profile based optimizations; after all, bytecode is just data), optree is very hard to modify (it is structured and inter- and intra-linked).

Re:Yes, Perl is indeed dead and rotting (0)

Anonymous Coward | about a month ago | (#47301515)

470,000 lines of changes across 2,900 files from 124 authors

i'm supposed to be impressed by volume?

Re:Yes, Perl is indeed dead and rotting (4, Interesting)

johnkzin (917611) | about a month ago | (#47301339)

Meanwhile, Perl 5 being phased out of system building / admin tools

Really? what's replacing it? (genuine question ... I haven't seen anything that really fills that niche as effectively nor as completely)

Perl 5 is still charging full steam ahead in every sysadmin group I've been around. I know there are python advocates out there, but I have only encountered ONE major IT shop that is completely (or nearly so) python driven (and it happens to be Guido's employer -- hardly a good example). Other than that, the most I've seen is _some_ python but _mostly_ perl in any IT shop.

Sure, language-geeks have been talking about what other language has done a better job of being "a language" for at least 10 years ... but really, anything you can say negatively about perl can be said about bourne shell programming. And, yet, not only did bourne shell dominate *nix sysadmin and package install programming for 25+ years, but it is _still_ being done out there, by some backward luddite sysadmins. Perl has only been dominant in the sysadmin space for less than 15 years ... I wouldn't be surprised if it lasts at least another 10 more. And, really, since it lacks many of bourne shell programming's problems, it'd be reasonable to expect it to keep going for a lot longer than that. Especially as perl 5's evolution continues to slow down and become more stagnant (creating a consistent and stable programming layer ... which has not been true through the entirety of perl 5's lifespan -- there were a few major hiccups there as various sub-systems were refined or changed).

(to be clear, perl 5 has _existed_ for more than 15 years, but it didn't become really dominant as a sysadmin language of choice, finally eclipsing bourne shell, until the very late 1990's or early 2000's ... probably about the time that y2k issues wiped out anything too old to have/support perl, and the last of many *nix vendors and most linux distro's being sure they included perl in their boilerplate installation, pretty much removing bourne shell's one major claim to fame (ubiquity).)

Re:Yes, Perl is indeed dead and rotting (1)

rubycodez (864176) | about a month ago | (#47301379)

seeing a lot of system tools built in python now

Re:Yes, Perl is indeed dead and rotting (2)

johnkzin (917611) | about a month ago | (#47301491)

Like I said, I haven't seen python take over anywhere other than Google. That's a big claim to fame, surely. But, it's not as wide spread as it could or should be, at this point in python's life, IMO. It just doesn't have the momentum nor clear advantage (to non-language-geeks) over perl to push it forward fast enough to overtake perl.

I do like python, mind you. I just think it's stuck in the betamax / BSD niche (academically superior to its cousins, but stuck in second place for reasons that have nothing to do with its academic superiority ... because academic superiority doesn't win any races outside of academia).

Re:Yes, Perl is indeed dead and rotting (1)

Anonymous Coward | about a month ago | (#47302147)

It probably depends a lot on exactly what industry you're in, and a lot down to luck as there are lot of places using different things and combinations. I used to use perl a lot about 10 years ago for both system management and software glue when working with high performance computing and managing clusters for university and government research. I haven't seen any perl in the last four projects/places I've worked though, either on the sysadmin side or on on the user scripting side. The simplest stuff might be in a shell script, but otherwise it is all python and idl (ugh), with the latter being abandoned whenever possible. And these are not academic environments in the sense of being filled with CS people, but mainly physicists and engineers picking the tools to get crap done as fast as possible. It is probably different in other shops, and would need some actual surveys instead of anecdotal accounts.

Re:Yes, Perl is indeed dead and rotting (4, Informative)

cream wobbly (1102689) | about a month ago | (#47302181)

You've never touched a Red Hat OS recently then.

Re:Yes, Perl is indeed dead and rotting (0)

Anonymous Coward | about a month ago | (#47301397)

Yeah, everyone seems to have switched to Python 3... err, Python 2... well, Go?

Re:Yes, Perl is indeed dead and rotting (1)

preaction (1526109) | about a month ago | (#47301409)

Nah, Rust is the new hotness!

Re:Yes, Perl is indeed dead and rotting (1)

viperidaenz (2515578) | about a month ago | (#47301891)

Maybe Larry is dead? For all we know he's just some chat bot trying to pass a turning test.

"Undead"? Exactly. (2, Insightful)

v3xt0r (799856) | about a month ago | (#47301227)

Most of the scripts/programs that I still use that are written in perl, truly are 'zombie processes', waiting to be put out of their misery.

Modern Weak Languages (0, Troll)

c0d3r (156687) | about a month ago | (#47301271)

It probably has lost popularity because all of these newbies can't handle a more powerful language, and have to go back to basic like languages. I could do lots with little code in Perl. Python looks like a BASIC with some c and perl features.

Re:Modern Weak Languages (4, Funny)

Sez Zero (586611) | about a month ago | (#47301291)

What's the difference between a hipster and a Perl hipster?

A hipster liked it before it was cool and doesn't now. A Perl hipster liked it when it was cool, and still does.

Re:Modern Weak Languages (2)

preaction (1526109) | about a month ago | (#47301349)

In fact, I like it more now that it _isn't_ cool!

Re:Modern Weak Languages (1)

Anonymous Coward | about a month ago | (#47301535)

I like Perl too, but come on. Python is very, very similar to Perl. It does basically the same things in the same way, modulo syntax. That's not to say there are no differences -- there are -- but they are minor.

In my opinion, the most significant difference between Python and Perl has nothing to do with the languages; it's that the Perl community makes a fetish of backward-compatibility, while the Python developers seem not to care.

Re:Modern Weak Languages (2)

laffer1 (701823) | about a month ago | (#47301805)

That and the Perl community is good about taking upstream patches, has CPAN and a faster, cleaner implementation. Ignoring syntax, Python's got some ugly code in the implementation and it's touchy and irritating to port.

I actually got into Perl because I tried to port Python and Ruby. When you see what's under the hood, it really makes you love Perl. I've migrated from PHP to Perl for scripts and web stuff in the last few years and I find it much less frustrating. The problem is no longer how am i going to get this to work, but which CPAN module do I want to use to do it.

Re:Modern Weak Languages (1)

cream wobbly (1102689) | about a month ago | (#47302205)

I completely agree. I choose not to handle a "more powerful language" because I don't want to have to remind myself how the language works every time I go back to edit a script I wrote four or five years ago: I want to grok it completely in one glance. Bash has done that for me. I'm sure Python will in years to come. Perl doesn't have any compelling features for me any more.

Slashdot itself uses Perl (3, Interesting)

amoeba47 (882560) | about a month ago | (#47301285)

...squarely blamed Slashdot for starting the "Perl is Dead" meme in 2005...

Meanwhile, it's apparent that slashdot itself uses Perl e.g: http://slashdot.org/job_board.... [slashdot.org]

Re:Slashdot itself uses Perl (-1)

Anonymous Coward | about a month ago | (#47301811)

Exactly. And what better example of a slow and painful death than Slashdot? beta.slashdot.org is Slashdot's Perl 6.

Always found it amusing (2)

Dega704 (1454673) | about a month ago | (#47301453)

Especially considering that the Linux job market is red-hot, and almost all Linux sysadmin job listings I see list Perl as a wanted skill. What exactly causes a language to be declared dead, anyway? Would you say that Fortran or Cobol are dead? Because they are still going strong in their respective niches.

So Perl isn't Dead? (2)

bobbied (2522392) | about a month ago | (#47301477)

Perl may not be "dead", but it's dead to me.

Does Deprecated mean ANYTHING? I used to write Perl programs, some 20 years ago, it was the thing. I wrote thousands of lines of KSH scripts too at that job. Perl it got replaced by a different tool, not that the new tool is better, but because it was new, just like KSH, CSH and BASH are no longer the tools of choice.

As you young whipper snappers exit my lawn, I offer you the following tidbit of knowledge : "Learn from what happened to Perl, and learn as many tools as you can. Where it's not the tools that make the programer good or bad, having the right tool in your toolbox can make a good programer a great one. Be the great one."

Netcraft (2)

Major Blud (789630) | about a month ago | (#47301669)

But did Netcraft confirm it?

Personally I prefer "half-dead" or "quasi-dead". Does that make me a pessimist?

Only have themselves to blame (1)

wiredlogic (135348) | about a month ago | (#47301715)

Betting the farm on Parrot and then waiting *years* to start implementing the Perl 6 spec is what killed it. Besides, around these parts we wait for Netcraft to confirm. We haven't succeeded in killing off the *BSDs yet have we?

Meh (4, Insightful)

Greyfox (87712) | about a month ago | (#47301735)

Tool for the job and all that. If I had to maintain some code, I'd prefer perl with "use strict" over any of the newer OO languages. At least when you're looking at bad code, you can usually salvage something from structural code. I've seen some atrocious Ruby programs lately.

Most of the time you're maintaining code you're maintaining bad code, though, and it's pretty rare that I run across a perl program with "use strict" turned on. But if I don't see it, I at least know what I'm up against. The newer languages need a similar "A bad programmer wrote this" flags.

Perl requires brains (1)

BenSchuarmer (922752) | about a month ago | (#47301749)

so I'm not surprised

Metaphysical query (1)

mark-t (151149) | about a month ago | (#47301871)

Do the definitions of the terms involved stipulate that anything that was genuinely dead in the past, but is, in some way, no longer considered as dead anymore necessarily be considered undead?

Kill it with fire (0)

Anonymous Coward | about a month ago | (#47301899)

Perl has no reason to exist.

And no, not everything is a tool with the right application domain. Somethings are just plain trash.

mod_perl (1)

Anonymous Coward | about a month ago | (#47301979)

mod_perl is a major issue for my company. Apache httpd 2.4 has been out for 2 1/2 years and there is still no mod_perl release. The release of Apache httpd 2.4 was no surprise. It was in beta as 2.3 for around 3 years before 2.4 came out.

There is something you can cobble together from svn, but the mailing lists are nearly dead and what you can cobble together from svn is not ready for production with Mason, at least from what I have experienced.

We're trying to get rid of all of the Mason and mod_perl stuff and replace it with something modern (PHP and Javascript frameworks), but it works acceptably with Apache httpd 2.4 for now. Perhaps this framework would have been updated if it weren't for Perl 6 becoming abandonware. Now that I'm thinking about Mason, that stuff is dead as a doornail. No activity there, either.

Perl is still good for what we used it in the pre-web mass commercialization days, throwing together a quick script, but Perl has lost its way otherwise. I would never deploy Perl with a new project on the web.

As for me, I'm a language generalist. I've been programming for closing in on 30 years, so I learn what I need. Perl has almost completely lost its utility and is becoming to me like COBOL or FORTRAN, just a niche language or something legacy you have to support.

Proof (with silly statistics) ... (4, Informative)

rduke15 (721841) | about a month ago | (#47302157)

Is it dead? Well, some quick scripting can tell us the truth, using Bash and of course Perl.

On my Ubuntu notebook and main machine:

sudo find /etc /bin /sbin /usr/bin /usr/sbin -type f -executable -exec file -b "{}" \; \
| perl -MData::Dumper -nle '
        next unless /script/;
        if ( /(shell|python|ruby|perl|bash)/i ) {
            $types{$1}++
        }
        else {
            warn "Other: $_\n"
        };
        END {
            print Dumper(\%types);
        }'

Output:

Other: a /usr/bin/make -f script, ASCII text executable
Other: a nickle script, UTF-8 Unicode text executable
Other: awk script, ASCII text executable
$VAR1 = {
                    'perl' => 283,
                    'python' => 104,
                    'bash' => 1,
                    'Ruby' => 3,
                    'ruby' => 9,
                    'shell' => 602
                };

On a server:

Other: a /bin/dash script, ASCII text executable
$VAR1 = {
                    'Python' => 36,
                    'Perl' => 139,
                    'shell' => 267
                };

Looks very much alive. Unless of course, Perl realized what it was calculating and cheated and made it's own numbers up on the fly...

if it's not dead... (1)

stenvar (2789879) | about a month ago | (#47302217)

If Perl really isn't dead yet, could we please put it out of its misery and shoot it? Then drive a stake through its heart, burn it, encase the ash in cement, and then bury it in a silver urn, just to make sure that it will never, ever come back?

Load More Comments
Slashdot Login

Need an Account?

Forgot your password?
or Connect with...

Don't worry, we never post anything without your permission.

Submission Text Formatting Tips

We support a small subset of HTML, namely these tags:

  • b
  • i
  • p
  • br
  • a
  • ol
  • ul
  • li
  • dl
  • dt
  • dd
  • em
  • strong
  • tt
  • blockquote
  • div
  • quote
  • ecode

"ecode" can be used for code snippets, for example:

<ecode>    while(1) { do_something(); } </ecode>