Live data from Hacker News

What is Modern Perl

josetteorama.com

21–30 of 46 posts

Re: What is Modern Perl

#21
post #5

I started using Perl around 2006'ish, that was pretty late in the day compared to most Perl hackers. I was primarily a C/C++ Dev, going the OO way. And I was doing Java here and there. Until one morning a colleague of mine, saw me doing some stuff I was taking really long to finish. He just walked up to my cubicle and just said 'Why dont you use Perl to do this' and then started my crazy journey with Perl. What I rea…

I started in 2003 or so, and got into it more seriously because I ended up with customers to support using Perl software. Perl is an amazing language, and with many modern perl approaches, it's wonderful. This being said like most frameworks it is extremely important to know when to leave the framework or leave things out. While I LOVE working with Moose, my own projects are very heavily stored procedure centric and…

I guess the problem with Perl 6 is that it's more of a "fork" than an "increment". Thus, Perl 5.16 (and beyond!).

Re: What is Modern Perl

#22

I'm torn between thinking there is value in learning some Perl and not really knowing that value might be. I've found a lot of embedded wisdom in the "old school" stack. If you edit in vi, add some sed / awk / grep, and learn some bash, you'll find these tools start to come together and leverage one another up substantially. Perl might be more post-Bell Labs but it still was written and used by smart people to Get St…

I'd love to hear how it pays returns for people more focussed on back-end support of web development.

To pick one thing - Perl's testing infrastructure. It's just awesome. I miss it in other languages.

See http://news.ycombinator.com/item?id=4040005 for a discussion.

Re: What is Modern Perl

#23

Writing a book on Modern Perl is nuts. As the author of this post points out, there have been about twenty releases since Perl 5.6, when the book was published. Features like the "switch" and "state" keywords have been introduced. If you look away too quickly, another database interface crops up, or people are doing objects differently. Perl changes so often that writing about it is like trapping a unicorn. It's impr…

Yes, I'm so happy that Java, er, $OTHER_LANGUAGE, changes so (incredibly) slowly :-)

Perhaps there is a happy medium somewhere between these extremes, though.

(there seems to be just a bit of sarcasm in the above post, though -- writing about the moving Perl target is hard, but having a non-moving base one is employed to build on has its own "joys", as well)

Re: What is Modern Perl

#24
post #7

In perl culture, "Modern Perl" refers to bad programming by a core group of egocentric, sanctimonious developers who are to Perl what Lennart Poettering is to Linux. There are now dozens of CPAN modules with names like "common::sense" and "Modern::Perl" that provide no useful code, but introduce packaging dependencies and administrative overhead in the name of not having to type "use strict;" out by hand. Modern Perl…

I actually despise Moose as much as I despise blindly over-doing OO. To me Modern Perl meant tackling problems in a much more Lisp-inspired way (via lexical scoping, anonymous functions, closures, lists, etc) ... but in Perl. Kind of like "Higher Order Perl."

I had the impression it was more a cultural shift, a renewed interest in Perl and people wielding it much differently. There's a different CPAN web interface[1], a lighter cli client[2], and everyone is on GitHub and writing hundreds of tests. I guess Moose is part of that shift but I'm torn a lot of the time - I support modern Perl but I hesitate to support blindly copying the warts from other languages just to appear modern.

This[3] is a result of searching for common::sense ... yikes.

[1]: http://metacpan.org [2]: https://metacpan.org/module/App::cpanminus [3]: https://metacpan.org/module/Real::Handy

Re: What is Modern Perl

#25
post #18

What is modern Perl? Python. (I'll elaborate more here from my earlier one-word answer). Long-time perl programmer here, until I found Python. Perl is powerful, but Perl is for the programmer, not the programmer's coworkers. It's not even for the programmer 6 months down the line. This is nothing new, and it has become a stereotype in the community. Yes, this argument has been made and refuted many times, but I argue…

Obvious trolling from a karma 20 account. I'll enjoy Python when pypi doesn't frustrate me many times more than CPAN, there is some Python equivalent of Moose (Python 3.5, 4?) and the grammar is extensible like Perl 5 (using CPAN modules).

[deleted]

Re: What is Modern Perl

#27
I started picking up Perl (as my first programming language) in 2003 while working in a genetics lab. I used it for years on a number of bioinformatics projects due to its strengths in tackling disparate sources of often irregular information. Recently I've been using it for the Kaggle Facebook competition simply because I can iterate my designs faster than in any other language. I'm looking forward to learning a few of these more newfangled modern appurtenances of Perl.

Re: What is Modern Perl

#29
post #24
post #7

In perl culture, "Modern Perl" refers to bad programming by a core group of egocentric, sanctimonious developers who are to Perl what Lennart Poettering is to Linux. There are now dozens of CPAN modules with names like "common::sense" and "Modern::Perl" that provide no useful code, but introduce packaging dependencies and administrative overhead in the name of not having to type "use strict;" out by hand. Modern Perl…

I actually despise Moose as much as I despise blindly over-doing OO. To me Modern Perl meant tackling problems in a much more Lisp-inspired way (via lexical scoping, anonymous functions, closures, lists, etc) ... but in Perl. Kind of like "Higher Order Perl." I had the impression it was more a cultural shift, a renewed interest in Perl and people wielding it much differently. There's a different CPAN web interface[1]…

Personally, I think Moose' value to the community is much larger than that it just provides good OO.

It pushed a much more declarative approach than usual, that swaps over to other projects (Moo, Mo, even Class::Accessor supports has declarations now). It has a community that is focused on best practices with regards to OO. It put introspection more in the spotlight (like the idea of getting Getopt definitions by introspecting classes).

It is also flexible, which allows for lots of extensions to its functionality. That means a lot of concepts are tried out on CPAN already. Even if someone doesn't use Moose, there is lots of OO knowledge to be found in the ecosystem. Same goes for runtime type constraints/coercions.

Then there's the p5-mop project, that would provide a common core, so many of the things above could find themselves in a much more light-weight and broadly usable variety, with side-effects like less heavy anonymous packages.

Personally, while I'm very excited about where Perl 5 has come so far, I'm even more excited by the things we haven't thought of yet.

Re: What is Modern Perl

#30
post #5

I started using Perl around 2006'ish, that was pretty late in the day compared to most Perl hackers. I was primarily a C/C++ Dev, going the OO way. And I was doing Java here and there. Until one morning a colleague of mine, saw me doing some stuff I was taking really long to finish. He just walked up to my cubicle and just said 'Why dont you use Perl to do this' and then started my crazy journey with Perl. What I rea…

I started in 2003 or so, and got into it more seriously because I ended up with customers to support using Perl software. Perl is an amazing language, and with many modern perl approaches, it's wonderful. This being said like most frameworks it is extremely important to know when to leave the framework or leave things out. While I LOVE working with Moose, my own projects are very heavily stored procedure centric and…

David Wheeler (theory) started working on a stored procedure centric project a while back and as a result extracted the DBIx::Class connection logic into DBIx::Connector - which I have a feeling you're already using.

I spent a fair amount of time hanging out in #ledgersmb a while back and in spite of being the project founder of DBIx::Class, I don't think I ever felt I had a convincing argument for using it, so honestly I'm glad you're not doing so (if I ever come up with an OM or something I'm sure you'll find out :)

Post reply on HN