News for hackers. Stuff that matters.
Re:Why Perl isn't Going Away Soon (Or Ever) by viraptor on Tuesday May 11, 2010 @11:50AM (#1338258)
But that's because you already know perl. For new people... I don't see a reason to go there. Perl smells funny - there are better alternatives that don't require you to spend time learning (for example) what can be referenced, what cannot, when is \ not taking a reference, why I cannot have lists-inside-lists, and how is that different from arrays anyway, etc. And that's only one source of that funny smell... For beginners, there are loads of languages which offer consistent behaviour and once they learn that, perl will be the odd one you don't really want to touch.

So yes - some people will still write perl, but it will be an obscure language one day (hopefully).

Re:Why Perl isn't Going Away Soon (Or Ever) by chromatic on Tuesday May 11, 2010 @02:30PM (#1338790)
There are better alternatives that don't require you to spend time learning ....

That's a silly argument. Do you know of any language where beginners don't have to learn between language primitives to create complex data structures, for example? Assuming (for example) that parentheses create lists and that lists are first-class data types in Perl (and neither is true) is a fine example of Blub programming false cognates.

Re:Why Perl isn't Going Away Soon (Or Ever) by viraptor on Tuesday May 11, 2010 @03:39PM (#1338985)
There's a difference between learning the difference where the language is consistent and when it handles everything differently. I see many problems, but staying with the list thing: \ creates references, () creates lists, \$a is a reference to $a, \($a, $b) is not a reference to an array, but it's (\$a, \$b), [$a, $b] creates a reference to an array without \. If I have a choice, I'll take a consistent solution instead.
Re:Why Perl isn't Going Away Soon (Or Ever) by chromatic on Tuesday May 11, 2010 @03:50PM (#1339010)
Here's your problem: if you skip learning the basics of the language -- if you assume that the fundamental behavior of a new language is the same as other languages you know -- you will suffer constant friction and confusion.

Lists and arrays are not the same thing in Perl. Parentheses do not create lists in Perl. Parentheses group terms.

You'd have the same sort of problem conflating tuples and lists in Python, especially if you don't know about the special comma syntax and zero-or-one element tuples.

Re:Why Perl isn't Going Away Soon (Or Ever) by viraptor on Tuesday May 11, 2010 @04:43PM (#1339141)
Not really. I like learning languages and enjoy much weirder ones than Perl. Still - Perl is way more inconsistent than anything I've seen before and believe me I tried - went through the same Perl tutorials every time I had to fix some code. Every single time spending hours finding out some strange thing I wouldn't expect. Actually I learned Python at the same time I was learning Perl the first time. I spent two days fighting with Perl code, then rewrote everything in about 3h in Python with no previous experience.

I didn't skip the basics of the language. Still - basics keep biting me every single time. I don't think it's my problem after all... I mean - it may have its strange rules - but if it's less easy to handle than other languages, it won't draw new people in.

Re:Why Perl isn't Going Away Soon (Or Ever) by chromatic on Tuesday May 11, 2010 @09:11PM (#1339809)
I didn't skip the basics of the language.

perlfaq4 explains the difference between arrays and lists in Perl in plain language. One is a variable. The other is a value.

The rest is operator precedence, grouping, and context. If you don't understand those, you don't understand Perl. Granted, most tutorials do a terrible job of explaining those, but these are fundamental concepts.

* ... but if it's less easy to handle than other languages, it won't draw new people in.*

That sounds like a tempting explanation for language popularity, but I doubt it's true -- it's too close to the "Obviously the technically best solution deserves to win!" fallacy. I suspect that practicality, availability, and the ease of which you can just get something done trumps quality. Certainly PHP's ease of deployment has contributed to its popularity more than consistency and correctness of design.