Live data from Hacker News

Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

news.ycombinator.com

61–70 of 163 posts

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#61
post #24

Earlier quoted context omitted.

As someone who knows neither version, I find this surprising. Surely, even if none of your code works, switching from Perl 5 to Perl 6 is much less of a "culture shock" than switching to, say, Ruby or Python?

That's the thing - what OP said is exactly the case. Perl5 is an order of magnitude closer to ES6 than it is to Rakudo.

ES6 is a language specification and Rakudo is software. When Perl is written in uppercase it usually means the language, so what you said is true but not informative.

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#62

To a large degree, the ongoing utility of Perl 6 depends upon the continued vibrancy of the CPAN community. IMHO, CPAN is anything but vibrant by today's standards. While CPAN hosts a vast archive of nearly 35,000 modules[1], many are aging. Fewer than 800 modules are known to exist for Perl 6.[2] [1] http://www.modulecounts.com/ [2] https://modules.perl6.org/

> Perl 6 depends upon the continued vibrancy of the CPAN community.

Why do you say that? Is this a theoretical point, a reasonable conclusion based on reading about Perl 6, or something based on trying and failing to do something with Perl 6?

> IMHO, CPAN is anything but vibrant by today's standards.

Have you encountered problems that aren't being addressed? What do you make of the river cleanup effort[1] and the new metacpan?[2]

> many [CPAN modules] are aging.

Do you agree that "aging" that's due to modules continuing to work without needing to be changed (due to careful maintenance of backward compatibility and mass testing[3]) is actually a good thing even if it looks bad?

Do you agree that the same "aging" point can reasonably be made about the module archives of Python, Haskell, Fortran and Rust? If not, what is/are the key difference(s)?

> Fewer than 800 modules are known to exist for Perl 6.

Do you agree this might be a good sign, reflecting the "lots built in" aspect of Perl 6?

Are you aware that it's possible to use ordinary Perl 6 code with modules from Python, Ruby, Lua, Perl 5, etc.?[4]

[1] http://neilb.org/2015/04/20/river-of-cpan.html

[2] https://metacpan.org/about/meta_hack

[3] http://stats.cpantesters.org/

[4] http://modules.perl6.org/#q=inline

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#63
post #55

Biased core dev here... I've used Perl 6 for IRC bots. The ease of writing parallel code, nice OO model, multi dispatch, and subsets make it very pleasant to do them in Perl 6. Here's a bot I wrote that listens for GitHub webhooks and reports new commits and PRs: https://github.com/perl6/geth and here's another one that's just a bunch of random features: https://github.com/zoffixznet/perl6-buggable/ I also heard peop…

Do you know what algorithm grammars use under the hood? I don't see it mentioned in documentation like this: https://docs.perl6.org/language/grammars "Group of named regexes that form a formal grammar" Are Perl 6 "regexes" as powerful as a context-free grammar? I guess they use the same kind of backtracking algorithm and ad hoc recursion as Perl 5? That is, does the algorithm for regexes differ from Perl 5, or only t…

IIRC, Perl 6 grammars are parsing expression grammars (PEGs). I don't know if these are compiled down to recursive descent or packrat parsers; my guess would be the latter (since that's typical for PEGs).

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#64

To a large degree, the ongoing utility of Perl 6 depends upon the continued vibrancy of the CPAN community. IMHO, CPAN is anything but vibrant by today's standards. While CPAN hosts a vast archive of nearly 35,000 modules[1], many are aging. Fewer than 800 modules are known to exist for Perl 6.[2] [1] http://www.modulecounts.com/ [2] https://modules.perl6.org/

    > CPAN is anything but vibrant by today's standards.
I guess it depends on how you count it, but if you look at the actual statistics[1] the number of uploads, new authors is pretty much the same as when perl was in its heyday.

This isn't all old code churn either, from some brief clicking around new CPAN distributions in January peaked in 2005 at 251, whereas January 2017 saw 187[3].

Sure, Perl has been surpassed to a large extent proportional to other languages, but what tends to get forgotten in these comparison between language popularity is that even languages that have "fallen from grace" are comparatively going just as strong as they were 10 years ago, because computing has grown in the aggregate.

Which means that while your language of choice may not be as well known to your typical programmer as it was 10 years ago, the likelyhood of finding an existing module to perform some task is about the same.

1. http://stats.cpantesters.org/trends.html#stats12

2. http://stats.cpantesters.org/newdistros/2005.html

3. http://stats.cpantesters.org/newdistros/2017.html

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#65
post #3
post #2

I honestly haven't heard of anyone using Perl for anything new. Sure there is a lot of legacy Perl 5 being used and maintained, but Perl 6? For a new project? I've never even seen it on a short list.

I use perl for new code all the time. It's not a trendy language, so it won't get much coverage on HN, but the language and libraries are great IMO. Also, perl 6 is effectively a completely different language from 'normal' perl (i.e. perl 5.x). The difference between the two is far far bigger than say python 2 -> 3. As a perl programmer, I see no obvious benefit from switching from perl 5 -> 6, it would be the same a…

Perl6 is not, IMHO, a completely different language and I can't understand why the Perl6 community beat this drum so hard. "use ;" "my" variables, context awareness, $@% variable identifiers, list emphasis. At the syntactic level Perl6 is very similar to Perl5. OK, it's OO under the hood, unlike Perl5. If it's a completely different language why name it Perl6?

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#66
post #11

I followed the development of perl 6 for a bit. I was quite impressed for a while, as Larry Wall disolved most of the warts, corner cases, and ad-hocisms of perl 5 into a language which was cleaner and more abstract. Then he used the cognitive space thus provided to load up the langauge with as many features as he could pack in, and I gave up on it.

> as many features as he could pack in

Aiui there's some merit to the notion of The Lisp Curse[1] and he wanted to avoid it. Do you reject the notion of the curse, or think it doesn't apply to P6, or think he overdid it, or...?

Do you recall any specific features you felt went over the top?

[1] eg https://news.ycombinator.com/item?id=2450973

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#67
post #11

I followed the development of perl 6 for a bit. I was quite impressed for a while, as Larry Wall disolved most of the warts, corner cases, and ad-hocisms of perl 5 into a language which was cleaner and more abstract. Then he used the cognitive space thus provided to load up the langauge with as many features as he could pack in, and I gave up on it.

>I followed the development of perl 6 for a bit. To put it mildly.

:-)

"In the 20th century I followed the development of perl 6"

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#68
post #32

Substantial amount of Perl6 goodness is already baked one way or another in ES6/7, Python 3.x, Scala and even the modern C# and C++14/17. Speaking of stuff like concurrency, C3 resolution, object proxies (a.k.a AUTOLOAD), introspection/reflection, promises, reasonable regex engine, etc. As far as speed is concerned - with the modern approach to concurrent programming, it does not really make a difference which of the…

An aside but... The "modern approach to concurrent programming" totally depends on what you're doing. Async I/O isn't always the answer. Sometimes, you need to compute in parallel, and that's not necessarily mutually exclusive (e.g. Go). What language you choose does matter for both of these.

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#69
post #32

Substantial amount of Perl6 goodness is already baked one way or another in ES6/7, Python 3.x, Scala and even the modern C# and C++14/17. Speaking of stuff like concurrency, C3 resolution, object proxies (a.k.a AUTOLOAD), introspection/reflection, promises, reasonable regex engine, etc. As far as speed is concerned - with the modern approach to concurrent programming, it does not really make a difference which of the…

"Perl devs are probably 2x the price of a JS guy..." Funny that here in France it is quite the contrary which leads me and others Perl dev friends accepting JS work as Perl5 and even more Perl6 work are harder and harder to find.

I stand corrected - my statement is indeed not backed by concrete evidence, but my personal experience and is mostly related to job findings where some legacy Perl5 needs to be supported or amended.

Though, I'm more or less surprised that things are as you say in France.

Re: Ask HN: Perl 6: Do you use it, how do you like it, what do you do with it?

#70
post #55

Biased core dev here... I've used Perl 6 for IRC bots. The ease of writing parallel code, nice OO model, multi dispatch, and subsets make it very pleasant to do them in Perl 6. Here's a bot I wrote that listens for GitHub webhooks and reports new commits and PRs: https://github.com/perl6/geth and here's another one that's just a bunch of random features: https://github.com/zoffixznet/perl6-buggable/ I also heard peop…

Do you know what algorithm grammars use under the hood? I don't see it mentioned in documentation like this: https://docs.perl6.org/language/grammars "Group of named regexes that form a formal grammar" Are Perl 6 "regexes" as powerful as a context-free grammar? I guess they use the same kind of backtracking algorithm and ad hoc recursion as Perl 5? That is, does the algorithm for regexes differ from Perl 5, or only t…

The design of regular expressions is different than any other version from any other language to improve readability along with other improvements.

In Perl 6 regexes are seen as a type of method (that is they are literally implemented as a type of method in Rakudo)

Grammars tend to look like a cross between BNF, and well Perl. https://stackoverflow.com/a/41770672/1337

Perl 6 regexes have longest term matching using |, or sequential matching like Perl 5 using ||.

Since regexes are methods, they can take arguments as well.

Post reply on HN