Very recently, I was asked to clarify my stance on the Perl 6 naming debate. In short: I don’t think there should be another name for Perl 6, other than perhaps a nickname that would indicate the implementation. So “Rakudo Perl 6” or just “Rakudo”. This has been in use for many years already, and most definitely since Christmas 2015 when the first official release of Perl 6 was presented to the world.
Perl 6 is the successor of Perl 5. Just like Perl 5 was the successor of Perl 4. That is the way it was intended originally, and that is the way that it should go in the future. Anything else would do a disservice to all people involved in the Perl community.
Because the implementation of Perl 6 has taken much longer than anticipated, Perl 5 has suffered a lot from cannibalization. Which in turn caused a braindrain to other languages, because Perl 5 was perceived to be dead because of the coming of Perl 6. This can not be denied. What also can not be denied, that a lot of Perl 5 code written during the dot-com boom, was not written by the best of programmers: having been responsible for clearing out the final bits of original code written by the founder of a startup that is now a multi-billion dollar company providing jobs for 20K+ people, I think I know what that was like. So I think I can say the demise of Perl 5, was not caused by Perl 6.
Some people actually argue that Perl 6 was the result of an attempt to stop the already started demise of Perl 5:
As I said … (at) the meeting years ago where P6 was born, which was initially a meeting to discuss how to unify the community which was fragmenting, nothing good will come of this unless the underlying dysfunction of the community is addressed…
Regardless of other reasons for the demise of Perl 5 in the world, Perl 6 has become the scapegoat as the sole reason for the problems of Perl 5 by many members of the Perl community.
Renaming requests from Perl 5 users
The fact that Perl 5 will always have a version number with a 5 in it, is seen by many as the source of the problem of not having any future for Perl 5. Hence, many have asked for Perl 6 to be renamed. And perhaps that would have been a good thing at one point in time: but since its first official release in December 2015, that ship has sailed for good. There are now many Perl 6 books out in the world, 2 published by O’Reilly. Renaming the current Perl 6 to something else, and then claiming version numbers with 6 in them for the current Perl 5 code base, is just going to add to the massive confusion that already exists. So that will never happen.
Renaming requests from Perl 6 users
Perl 6 users have asked for Perl 6 to be renamed, because the association with Perl / Perl 5 is very strong. And currently has a very negative connotation. This association could have been prevented had Perl 6 been given another name in the past. But again, that ship has sailed when the first official release of Perl 6 was presented to the world in December 2015. From my point of view, the strong association can be made into a positive asset given anough time and effort. And I still believe in that.
But people have continued badgering Larry Wall for another name. One of them very public at the Perl Conference in Amsterdam:
The whole naming thing we’ve gone over so many times. I do think that we could have other terms by which Perl or Perl distributions are marketed. They don’t have to be marketed necessarily as Perl, especially in markets where that’s a swear word… But my interest and feeling is that Perl is my thing and whether Perl 5 or Perl 6 that’s really the name of the whole culture. And that’s why we’re all here together.
Recently another campaign was started to give Perl 6 an “extra name”. It stated:
As such, we are creating an alias only. One that does not have any reference to Perl in it (i.e. no “Perl++”). If another name is truly as superior as the full-rename proponents claim it would be, I believe the alias can become a defacto name through its sheer amount of use. Thus, the creation of the alias can be seen as a means for the full-rename proponents to prove their claims.
Larry Wall had some ideas about that as a stage name:
It’s the stage name (but Perl 6 still cashes the checks)”.
And very recently Larry Wall finally, very casually without much formality said that if people wanted to have an “extra name”, it should be “raku”.
A step back
Before I go on, I would like to elaborate on the definition of “stage name” Wikipedia says:
A performer will often take a stage name because his/her real name is considered unattractive…
In the early 60s, having a German name in the United States was considered an impediment to success in the music business. So a guy called Robert Allen Zimmerman decides to change his name:
You’re born, you know, the wrong names, wrong parents. I mean, that happens. You call yourself what you want to call yourself. This is the land of the free.
So he called himself
Bob Dylan and became a world famous artist performing to crowds of many thousands to this very day.
What do you think would have happened if he had changed his name to:
Bob "Dylan" Zimmerman? Would he have been as successful? Probably not, as the negative connotation of “Zimmerman” would still have applied.
Or for the younger ones among us: would
Farrokh Bulsara have been successful as
Farrokh "Mercury" Bulsara instead of
Freddie Mercury? Or
Stefani Germanotta have been successful as
Stefani "Gaga" Germanotta instead of Lady Gaga?
Things wrong with the use of “raku”
Ever since Larry Wall mentioned that “raku” would have his blessing as a stage name, the name “raku” has been used in conjunction with Perl 6.
"Raku" Perl 6. So,
Bob "Dylan" Zimmerman.
This is not the use of “Raku” as a stage name. It is even in direct conflict with what was proposed in the last campaign.
In my opinion, it is effectively an attempt at rebranding “Perl 6” to the name “Raku”. Thereby being completely passing by the “Perl community” component that Larry Wall mentioned at the Perl Conference in Amsterdam.
There has been close to no communication as to how the use of the alias “Raku” would be implemented within the Perl 6 core development team. Instead, the originator of the final campaign to get a marketing alias, took it upon himself to inject the word “Raku” in all publications about Perl 6. Without consultation with anybody in the Perl 6 core team. This has, for all practical purposes, all the qualities of a
coup d'etat with regards to the marketing of Perl 6.
If “Raku” is a better name for Perl 6, then it should be able to stand on its own. Therefore, any mention of “Raku” in conjunction with “Perl 6” is the worst of both worlds:
- it spoils the value of “Raku”, as it is still directly associated with Perl.
- it leads users of Perl 5 into thinking that the problems with Perl 5 are over
To repeat: “Raku Perl 6” is the worst possible combination. It is not a stage name in any shape or form. It is an attempt at rebranding with the ultimate goal of eradicating Perl 6 as a name. And thereby explicitely dividing the Perl community. Which doesn’t need a lot more dividing anymore before it completely disappears into oblivion.
Where do we go from here
In order for “Raku” (on its own) to get a fair chance at gaining mindshare in the world, it needs to be separated as much as possible from Perl 6, specifically in marketing, and probably in documentation.
I therefore propose to remove all mention of “Raku” from all materials in the Perl 6 Marketing Repository. Any promotional materials for “Raku” should be in a separate repository / site.
All mention of “Raku” in the documentation should also be removed. Instead, an automatic translator should be made that will convert all Perl 6 documentation to mention “raku” instead of “Perl 6”. Since Perl is good at mangling texts, this should not have to be a big effort.
A separate distribution should be made from the Rakudo Compiler and Rakudo Star distributions, where all mention of “perl” is replaced by “raku”. Anything less than that would harm the chances of “Raku” becoming a success.
Several sites on the internet, most notably StackOverflow, allow users of languages to ask questions about problems they have with a language. People asking questions about “raku” should get an answer in “raku”, not in Perl 6. Perhaps a similar question previously answered for Perl 6, might be referenced, but ideally a new answer should be written.
That is how I think “Raku” should be used as a stage name. People willing to market Perl 6 as “Raku” would not have to be involved in the development of Perl 6 at all. It is, after all, just a marketing name, a stage name.
This week I have not written a Perl 6 Weekly because I was too upset about how a simple line in IRC can wreak so much havoc. I have felt betrayed by Larry Wall for caving in to the continuous badgering. I have been mad at Larry Wall for not being clearer on how such a “stage name” should be used. I have been mad at Zoffix Znet, for being offered a finger and taking the whole hand. And I have been mad at a not so random CPAN author for comparing Perl 6 members to slave masters.
For me, writing this blog post has been therapeutic. I feel that I can go on with making Perl 6 better in every way (too bad that 1.5x faster improvement on hyper operators didn’t make it to the core yet because of this).
I hope that it can be therapeutic for other people as well. One can hope.