Ask HN: Is Perl making a comeback?
For years, there were pretty much zero articles about Perl posted here. Even Java received more linkage.
Recently, I'm seeing a small trickle of Perl posts, which makes me wonder if this is the beginning of a new trend.
Is Perl making a comeback? I was a Perl hacker for almost three years. It was my first dynamic, interpreted language and is what made me fall in love with writing software. Writing Perl was when I first felt that I was hacking rather than programming. The largest problem is that it's largely unreadable, a write-only language. There's too much magic in Perl. Perl 6 is making strides to correct this, but the culture of Perl is what makes me believe that it will never be a viable choice over other dynamic, interpreted languages. I moved to Python and will never look back. The Perl culture is exactly what lured me in to programming, so I'd rather it not change anyways. There are definitely still companies using Perl in production, but my guess is that it's always for legacy reasons. The largest problem is that it's largely unreadable, a write-only language. The problem with the English language is that it allows writers like James Joyce to get their work done just as it does E. B. White. > * the culture of Perl is what makes me believe that it will never be a viable choice over other dynamic, interpreted languages.* What's wrong with Perl culture? Perl as a language and as an implementation has many weaknesses (esp. maintainability), but I've never seen any reasonable criticism of its culture as a whole. Only very recently have I noticed a somewhat annoying trend towards evangelism, I attribute this to the loss of interest in the language with the exception of somewhat fanatic users. But most current users are probably still grumpy old men like me who just want to get work done without rewriting large legacy code bases from scratch. Nothing is wrong with culture. I love the culture. It's just that there is an emphasis on doing things in clever ways, not necessarily readable or maintainable ways. The average thread on PerlMonks (at least when I was a heavy reader) eventually turns to code golf. The language and culture both encourage that. I had a lot of fun writing clever code, and it really helped me understand data structures and efficiency at a deep level. Trying to force that culture of expression and code gymnastics to write a maintainable codebase just isn't worth it in my opinion. A language with more constraints and less magic will benefit a team trying to come together to build a product. I see Python as being somewhere between Perl (express yourself in clever ways) and Ruby (I know it's attributed to Rails, but omakase) in terms of culture. That's why I love Python. > The average thread on PerlMonks (at least when I was a heavy reader) eventually turns to code golf That might not be representative of the Perl community as a whole really ... Perl is used in corporate environments where "code golf" or "super clever" solutions will get you odd looks, Perl isn't an excuse for writing unmaintainable code, even if it's straight from PerlMonks. Books like "Modern Perl" by chromatic and software like Perl::Critic have moved the focus from writing "clever" to writing maintainable code in the last couple of years. In my opinion, it was too little and too late though and lacking supporting changes in Perl's implementation to reverse the trend (i.e. losing users). For people who have touched saner languages (like Go) in the mean time, it's just hopeless to keep messing about with Perl, no matter how disciplined people are and how supporting the toolchain is (I run Perl::Critic and perl -MO=Lint -c before every commit and it takes longer than "go build", which checks code much more thoroughly). The average thread on PerlMonks (at least when I was a heavy reader) eventually turns to code golf. The voting system of PerlMonks rewards this. Trying to force that culture of expression and code gymnastics to write a maintainable codebase just isn't worth it in my opinion. Don't adopt a voting system like that of PerlMonks in your business, I guess. Or else hire responsible adults. That seems straightforward enough. Perl 6 will first be released for HURD, and the first application will be Duke Nukem Forever. For many of us, Perl never went away. Been using it since the early 90s. It's ugly, but I know it, it does the job well, and it's reliable. Def. never went away. Picked it up in 1999 when working in a web design shop, still hackin' away at it, on my own. Still, on the same, evolving code base! No, people just started jamming in Perl headlines in the past few days. Anyone can submit, after all. It's the 3rd most popular dynamic language. One of Perl's claim's to fame was CPAN, but at this point there's probably more than enough Python or Ruby library support. Ruby and Python also have also JVM support. You'll still find Perl in a lot of legacy software because it was king for a decade. These days, I would probably just go with Python or Ruby on any new project because it's easier to find developers. Finally, consider if you want to outsource on oDesk, for example. There's a better chance of getting readable Python than readable Perl. It never left. You won't read about it here because its not in. Remember that this community revolves around a younger generation of programmers that learned to build web cruds with rails. Not a bad thing. They just see Perl as old. Perl 5 maintains that perception because of its refusal to break backward compatibility and fix longstanding warts. That was true until about 5.12. Since 2011, Perl's been much more aggressive about fixing warts and breaking backwards compatibility in intelligent ways (where it's getting in the way of something better or actively harmful). Hacker News represents a VERY small segment of the computer programming population. That's fine, but don't be confused if the echo chamber occasionally produces weird results. Perl is still in use in major companies, for web stuff and system administration, but also game development, hardware simulation testing and other cool things. It's not sexy, and it seems arcane to programmers used to more modern languages. But there are things happening in it. perl is in active use among sysadmin and devops people. please not I guess it will be more popular if Perl6 catch up in speed.