Live data from Hacker News

The Joy of Perl (1998)

salon.com

71–80 of 82 posts

Re: The Joy of Perl (1998)

#71
post #42

I still use Perl for server side chores, but most all my web app code is JS now and runs entirely in the web browser. As I recall, back in the mid-late 90s the phrase "there's more than one way to do it" was used a lot in reference to Perl, and that was generally true and made it pleasure to learn and use. There soon came to be two very divided camps of perl users. There were guys like Randal Schwartz that considered…

The Perl Cookbook was great for most basic questions and Perlmonks for anything beyond that. I still miss the discussions in Perlmonks, something that Stack Overflow is missing.

Re: The Joy of Perl (1998)

#72
post #64

Earlier quoted context omitted.

At least it's fun to write modern Perl code compared to Js which is kind of annoying. Raku is also a very nice language but it's still too slow and hasn't gained much traction. Someone who's proficient in Perl can probably become productive in Python in less than a month.

I was traditionally the farthest thing from a JS callback hell fanboy, but, using modern JS with async/await and “classes” (yes I realize it’s syntactic sugar, prototypical inheritances, yada yada yada), it’s not bad. I haven’t played with TypeScript in a few years, but I’m looking to get back into it. But why fool with Perl at all - especially Raku since it’s basically a new language that doesn’t have the widespread…

One fools with Perl if there's legacy Perl infrastructure in production. One does not simply rewrite 20+ kloc of working Perl code into something else just because it's cool. Mojolicious is a good and elegant web framework for modern Perl. I haven't seen anything comparable except maybe in Ruby.

Re: The Joy of Perl (1998)

#73
post #47

Earlier quoted context omitted.

No, it isn't the same. I'm no language lawyer, but this is my understanding of it. In python, $foo is a reference. It might be a reference to a scalar value, or list, or hash, etc, but it is a reference. The code you wrote might cause confusion for people who don't understand the python model. In perl, $foo might be a scalar value, or it might be a reference to a value of some kind. Perl has this exact same type of p…

Imho that's not really correct, or at least misleading. In Python, variable "foo" behaves like its value is a non-reference if the value is what some languages call "unboxed", for example numbers and strings. That's exactly the same as Perl. Technically, Python shares objects even in the case of numbers being copied around, and the object's address is visible with the "id()" function. (I emphasise address because tha…

Numbers in Python are referenced objects. Low valued integers get reused to avoid the bloat of duplicate objects.

Re: The Joy of Perl (1998)

#74
post #72

Earlier quoted context omitted.

I was traditionally the farthest thing from a JS callback hell fanboy, but, using modern JS with async/await and “classes” (yes I realize it’s syntactic sugar, prototypical inheritances, yada yada yada), it’s not bad. I haven’t played with TypeScript in a few years, but I’m looking to get back into it. But why fool with Perl at all - especially Raku since it’s basically a new language that doesn’t have the widespread…

One fools with Perl if there's legacy Perl infrastructure in production. One does not simply rewrite 20+ kloc of working Perl code into something else just because it's cool. Mojolicious is a good and elegant web framework for modern Perl. I haven't seen anything comparable except maybe in Ruby.

But specifically, why move to Raku for new projects?

Re: The Joy of Perl (1998)

#75
post #72

Earlier quoted context omitted.

I was traditionally the farthest thing from a JS callback hell fanboy, but, using modern JS with async/await and “classes” (yes I realize it’s syntactic sugar, prototypical inheritances, yada yada yada), it’s not bad. I haven’t played with TypeScript in a few years, but I’m looking to get back into it. But why fool with Perl at all - especially Raku since it’s basically a new language that doesn’t have the widespread…

One fools with Perl if there's legacy Perl infrastructure in production. One does not simply rewrite 20+ kloc of working Perl code into something else just because it's cool. Mojolicious is a good and elegant web framework for modern Perl. I haven't seen anything comparable except maybe in Ruby.

I'm more of a Ruby fan than a Python fan, but Python has Django, Flask, Tornado and others.

https://steelkiwi.com/blog/top-10-python-web-frameworks-to-l...

Re: The Joy of Perl (1998)

#76
post #72

Earlier quoted context omitted.

One fools with Perl if there's legacy Perl infrastructure in production. One does not simply rewrite 20+ kloc of working Perl code into something else just because it's cool. Mojolicious is a good and elegant web framework for modern Perl. I haven't seen anything comparable except maybe in Ruby.

But specifically, why move to Raku for new projects?

I personally think Raku is a poor choice for new projects. I've never heard of anything relatively popular built with it. I get the feeling it's quite a hobbyist platform at this point.

I'd rather use Perl 5 than Raku at the moment. At least Perl 5 has CPAN which is still somewhat alive.

Re: The Joy of Perl (1998)

#77
post #72

Earlier quoted context omitted.

One fools with Perl if there's legacy Perl infrastructure in production. One does not simply rewrite 20+ kloc of working Perl code into something else just because it's cool. Mojolicious is a good and elegant web framework for modern Perl. I haven't seen anything comparable except maybe in Ruby.

I'm more of a Ruby fan than a Python fan, but Python has Django, Flask, Tornado and others. https://steelkiwi.com/blog/top-10-python-web-frameworks-to-l...

I know. Django is quite different, maybe Flask is sinatraish but not async afaik. Tornado is async but plain different as well and from what I've read more suited for web APIs. I'd rather use just about any modern Node.js framework than older non async frameworks for Python.

Re: The Joy of Perl (1998)

#78
post #72

Earlier quoted context omitted.

One fools with Perl if there's legacy Perl infrastructure in production. One does not simply rewrite 20+ kloc of working Perl code into something else just because it's cool. Mojolicious is a good and elegant web framework for modern Perl. I haven't seen anything comparable except maybe in Ruby.

But specifically, why move to Raku for new projects?

Because of the rational math. For what it's worth it could replace Cobol, although I don't know if that's such a great thing. And maybe because it's a well designed language and a joy to program in, but we already have Ruby for that.

Re: The Joy of Perl (1998)

#79

Earlier quoted context omitted.

But specifically, why move to Raku for new projects?

I personally think Raku is a poor choice for new projects. I've never heard of anything relatively popular built with it. I get the feeling it's quite a hobbyist platform at this point. I'd rather use Perl 5 than Raku at the moment. At least Perl 5 has CPAN which is still somewhat alive.

It's a bit like Julia, or Java 1.3, only without the marketing behind it. It's quite capable, definitely not a hobbyst project. Too slow and missing a lot of libraries though. And yes, Perl is still a better choice.

Re: The Joy of Perl (1998)

#80
post #67
post #66

Earlier quoted context omitted.

No, but it was so long in the making that I had discovered alternatives and mastered them. I still write perl5 sometimes but none of perl6 features convinced me to install an interpreter anywhere when I already have ruby or python on the machine.

Too bad. And now it is too late, because Perl 6 has been renamed to Raku ( https://raku.org using the #rakulang tag on social media). Which features would convince you to install Raku?

Which does it offer that are not covered by ruby, python or CL?

I am fluent in a lot of languages and cannot really imagine anything that could motivate me to upgrade my perl5 black belt to perl6 except for a well-paid gig that requires it.

Post reply on HN