

Status of Perl 6 - peteretep
http://perl6.guide/

======
SwellJoe
It's interesting how much negativity Perl 6 (or Perl, in general) generates,
and how dismissive folks are of it's usefulness. The fact is that Perl is used
extremely widely in a huge variety of roles. New projects are being launched
in Perl (DuckDuckGo is a relatively recent thing that has been very
successful, but there are many others), and a lot of very smart people work in
Perl, both 5 and 6.

If Perl isn't your bag, or Perl 6 is taking too long to be "finished" for you
to want to use it, that's fine. There are hundreds of languages to choose
from. I understand the frustration of longtime Perl developers; Perl 6 is the
Perl developer vanguard seemingly turning their backs on "pragmatic" and
running somewhat haphazardly toward the theoretical and (very far) forward
looking (Perl 6 contains many more novel concepts than a lot of newer
languages, such as Go).

Could it, should it, have been done differently? Incrementally, with real-
world testing for each new feature? Probably. Hindsight is 20/20\. Is it a
victim of second system effect? Possibly, we won't know until it hits some
reasonable levels of production; right now it's still quite academic. Hubris
is one of the Perl virtues, and it may have led to "perfect is the enemy of
the good" winning out on more decisions than it should have.

But, Perl 5 is a great language today, certainly a match for Python or Ruby
for conciseness, performance, capability, etc. And a vastly better language
than Perl 5 was 14 years ago. Perl lost the popular mindshare war..but, it
still helps people build a lot of cool software in a lot of fields.

Regardless of whether you'll use Perl 6, I'd love it if people here at HN
would actually take a look at the novel ideas contained therein, rather than
focusing on the superficial "it's late and I don't like it". There are
concepts in Perl 6 that could improve your favorite language, and might alter
the way you think about solving problems. If only you'd check it out. I'd
wager most of you have read a bit about Haskell or Go or Erlang or Scala,
without ever seriously intending to develop in it. I would suggest the same
approach to Perl 6.

~~~
jeffdavis
The P in PERL stands for "practical". Switching the story and saying that it's
now an academic pursuit feels like abandonment to some. Programming in perl5
was part of a livelihood for many people; uncertainty and decade-long limbo is
very poor leadership. (And leadership is a privilege; followers get mad when
they lose faith in a leader.)

That being said, perl6 is interesting, so I think looking at it more like
haskell could be valuable.

~~~
anonbanker
Larry Wall also says that the P can equally be validated as "Pathetic". And
it's a lowercase Perl, not PERL.

Source: the Camel book.

~~~
vorg
The P in perl also comes from the P in BCPL, a language from 1966, also
according to Larry Wall.

And from BCPL came, in order...

* B language

* C, and its statically-typed "C" derivatives C++, Java, C#, ObjectiveC

* P for perl, and its dynamically-typed cousins and derivatives Python, PHP, Ruby, etc

* L for whatever's next, must be the final victory of Lisp

~~~
anonbanker
[citation needed]

~~~
vorg
> Source: the Camel book

> [citation needed]

You didn't have a citation on your own quote when I responded to yours without
a citation. Perhaps you should have written "Whoops, I neglected to add the
source of my quote when you replied but have done now. I can't, however, find
the source of yours -- where did you get it?".

As for my quote about the acronym of BCPL being a premonition of the languages
after it, I read it somewhere sometime before 1997 which was the last time I
programmed in Perl.

~~~
anonbanker
So, we've confirmed that:

* You maybe programmed in Perl once in '97.

* You didn't know the difference between PERL and Perl.

* You don't know what the camel book is (Programming Perl by O'Reilly), and have never even read the first chapter.

* you have no citation for your BCPL statement.

------
nimbix
> there's a usable alpha, ready to download and use right now.

Back in 2004 we had to choose the programming language for a new project. PHP5
(which was just released at the time) was the top candidate, but I really
wanted to use Perl6 which a lot of people were very enthusiastic about and
whose weekly mailing list updates made it look like an early partially usable
version which could be used for staring the project was just around the
corner.

In the end we went with PHP. 10 years later it looks like we made he right
decision.

I realize that a lot of factors contributed to Perl6 being this late,
including several cases of plain old bad luck, bit I still can't help being
disappointed that the language I thought would be the next big thing might not
get much use at all...

~~~
bane
> Perl6 which a lot of people were very enthusiastic about and whose weekly
> mailing list updates made it look like an early partially usable version
> which could be used for staring the project was just around the corner.

If there's one thing that I would point to about why Perl is no longer a
popular language, this is it. I too remember all the hubub and excitement. I
think I even have a copy of the O'Reilly Perl 6 Essentials somewhere waiting
for a v1.0 to come out any day now.

Perl 6 should have really been a staged release. v1.0 will have this, 2.0 will
have this, etc. As languages age they add new features and this wouldn't have
been viewed as odd at all.

But there are people who have gone from middle-school to millionaire in the
time it's taken for a non-alpha Perl 6 to make it out the door.

------
chaostheory
I feel the biggest problem for Perl 6 at least in terms of mindshare is that
Perl's spiritual successor already offers most of Perl 6's promises and it's
already in production. It's called Ruby.

~~~
krylon
I agree partially. When Ruby took off,it captured a lot of programmers that
otherwise would have probably gravitated towards Perl (or Perl6).

But if Perl6 had been finished in 2005 or 2006, things might look quite
different today.

~~~
chaostheory
I'm not sure. imo Perl5 developers tend to be more conservative than the
average developer, which makes sense given that maintenance of large sets of
Perl5 code is very difficult and requires a lot of discipline; so taking a
risk is a lot more expensive for most Perl5 devs. I feel that people moving
from Perl5 to Ruby only did so after Ruby became established.

------
debacle
Perl 6 was not written with Perl hackers in mind. It was written with
programmers from other languages in mind in hopes to draw them into the Perl
ecosystem and I think that was a bad idea. It basically made Perl 6 DOA.

What we really needed was a Perl 5.5. A cleaner syntax and OO that isn't
shoehorned onto the language. Many of the "features" of Perl 6 aren't really
features at all, and in many ways Perl 6 doesn't stand up to other languages
that it might compete with (JavaScript, for example).

~~~
ChuckMcM
I think this is an excellent point. Perl excels at facilitating a wide variety
of users, and as a language it really does feel like everything and several
variations of a kitchen sink included. That openness to any idea is seen as
inelegant by some, and accommodating by others.

Early on Perl 6 felt like a different language, and while that has moderated
somewhat, it still doesn't feel very 'perlish'. It will be interesting to see
where it goes.

------
peteretep
I am a particular fan of the infix operators, ala:

[https://github.com/cosimo/perl6-digest-
md5/blob/master/lib/D...](https://github.com/cosimo/perl6-digest-
md5/blob/master/lib/Digest/MD5.pm)

~~~
nimbix
Some of the operators in that file make even the craziest inventions of Scala
users look tame.

~~~
bshimmin
I think the syntax highlighter felt pretty much the same way as you do.

------
bane
"Keep using Perl 5 for production."

I'd really love to see and outsider do writeup on why Perl 6 is where it's at.
It'd be a great lesson in project management, time and scope boxing and
feature creep. I mid-career now, and Perl 6 was announced when I was an
_intern_. At this rate, production releases will come out when I'm deciding on
early or standard retirement.

Meanwhile, Perl 5 seems to have gotten all kinds of wonderful new life
breathed into it.

~~~
chromatic
_I 'd really love to see and outsider do writeup on why Perl 6 is where it's
at._

JWZ explained it more than a decade ago:
[http://www.jwz.org/doc/cadt.html](http://www.jwz.org/doc/cadt.html)

~~~
acqq
I have never heard that the Perl 6 developers are teenagers. However, the
truth is that Perl 6 inspiration had a lot of elements that sound... strange.

[http://www.theregister.co.uk/2008/12/16/larry_wall_perl_6/](http://www.theregister.co.uk/2008/12/16/larry_wall_perl_6/)

And then there's the first moment of inspiration (in 2000, that is, 14 years
ago):

[http://www.developer.com/lang/perl/article.php/3076571/Perl-...](http://www.developer.com/lang/perl/article.php/3076571/Perl-6-and-
the-Parrot-Project.htm)

"An hour into the discussion, around the time most people nod off in any
meeting, Jon Orwant (the reserved, universally respected editor of the Perl
Journal) stepped quietly into the room and snapped everyone to attention with
an entirely uncharacteristic and well-planned gesture. Smash! A coffee mug hit
the wall. “We are *@$!-ed (Crash!) unless we can come up with something that
will excite the community (Pow!), because everyone´s getting bored and going
off and doing other things! (Bam!)” (...)

Within a few hours the group settled on Perl 6, a complete rewrite of Perl.
The plan wasn´t just a language change, just an implementation change,or just
a social change. It was a paradigm shift. Perl 6 would be the community´s
rewrite of Perl, and the community´s rewrite of itself."

~~~
chromatic
_I have never heard that the Perl 6 developers are teenagers._

The important point of JWZ's article isn't "teenagers". It's "rewriting
everything from scratch... happens, over and over again". For example,
Rakudo's current "Great List Refactor":
[http://pmthium.com/2014/10/apw2014/](http://pmthium.com/2014/10/apw2014/)

~~~
acqq
I've read it, it's not "rewriting" for the sake of it, they actually
significantly change the behaviour too. What I never understood was why people
believed that the Parrot VM had to be made.

~~~
chromatic
Apart from maybe Guile, there was no really solid, cross-platform VM with a
compatible license suitable for Unix interoperability and the dynamic features
Perl needs. Lua would only later be a reasonable contender.

------
zenciadam
Is perl 6 now officially the Duke Nukem Forever of lightweight languages?

~~~
ggchappell
Getting there. DNF took 15 years. Perl 6 will surpass that if we don't get a
real release in 2015.

But the real champions for delayed development are LaTeX 3 at something like
20 years & counting, and the GNU Hurd at 24 years & counting.

~~~
vezzy-fnord
The most protracted piece of vaporware in history is actually Project Xanadu,
at a whopping 54 years.

~~~
gpvos
Is someone actually still working on that?

~~~
vezzy-fnord
Yes. In fact, OpenXanadu was unveiled this year:
[http://xanadu.com/xanademos/MoeJusteOrigins.html](http://xanadu.com/xanademos/MoeJusteOrigins.html)

That said, it's mostly just a web reimplementation of the incomplete 1998
Udanax client.

------
seiferteric
I have been more interested in Parrot VM rather than Perl 6 itself. I like the
idea of a unified VM, though it looks unlikely to take off. The ability to
share code/libraries between languages would be awesome.

~~~
jgalt212
do you mean just like the CLR?

[http://en.wikipedia.org/wiki/Common_Language_Runtime](http://en.wikipedia.org/wiki/Common_Language_Runtime)

~~~
pmontra
Or the JVM. Many languages compile to it, even some with their own
interpreters (one example: Ruby). Or the Erlang VM (Beam). There is at least
Elixir that compiles to its bytecode.

------
emodendroket
So, more or less the same as it has been...

------
seanp2k2
I'll switch when Python 3, IPv6, and IE11 are the most-popular.

~~~
ghshephard
What's interesting, is that you called out three technologies that are all
definitely going to be market leaders in their particularly category over
time. If we consider IE 11 to be the "Category of Microsoft Browsers", Python
3 to be the Category of Python Languages, and IPv6 to be the category of IP.

Here are the dates on which each will be category leaders:

    
    
      o IE 11 - 2014
      o Python 3 - 2016
      o IPv6 - 2022

~~~
rspeer
I find those years reasonably believable, but where did they come from?

~~~
ghshephard
IE - I browsed for Market Share. Python 3 - several years of carefully
watching mindshare, assessing the challenges with going to Python 3 (mostly
the more cognitively complex (if somewhat more consistent) challenges with
dealing with Unicode/Strings/Bytes, plus my experience shifting from Python 2
to Python 3, cross referenced with watching new application uptake of Python 3
+ 3rd party Library Support).

And IPv6 is my full time job. I teach it to a lot of people, and see it
deployed all over the world - so I have a pretty good sense of whether it's
going to happen (it will), and how long it will take (quite a while, Carrier
Grade NAT could actually keep IPv4 going forever)

