You may have read that «Perl 6» has just been renamed to «Raku». It happened in a very low key fashion, without any official announcement. The reason is that the actual rename will coincide with a compiler release.
Perl 6 has had a long and thorny history. Nobody expected that it would take 15 years from conception (in 2000) to birth (in 2015). In the meantime it has become glaringly obvious that Perl 6 will not replace Perl 5 (as initially intended, and as Perl 5 replaced Perl 4). There is too much Perl 5 code in daily use, and it works perfectly well. Perl 5 is a very useful and competent language, and will remain so.
So it was decided to redefine it from a successor language to a sister language emerged, to debunk the perception of a superior language hell-bent on superseding Perl 5. The destinction was probably a lost cause.
Then in 2018 came the decision to allow «raku» as an alias for Perl 6, but that didn't make traction, and was probably just adding to the confusion.
And now in October 2019 the core developers and Larry Wall has decided to officially rename the language. Nobody knows what this will mean for the futures of the two, now explicitly separate, languages. But we can only hope for a long and happy life for both of them.
This brand new web site («Raku Musings») uses the new name, but my old articles 1-37 (using «Perl 6» and originally published on perl6.eu), has been rewritten to reflect the language rename and moved here.
You may have
raku available on your computer. You can check it on a Unix-like
system like this:
$ which raku /opt/rakudo-pkg/bin/raku
On my computer, using Pre-compiled
raku is simply a symbolic link to the perl6
executable, but this is likely to change (with perl6 becomming the symbolic link
to raku) with the official rename.
If «raku» isn't available, you'll get no output from the «which» command. Just create the missing symbolic link, and you are good to go.
$ cd /opt/rakudo-pkg/bin/ $ sudo ln -s perl6 raku
#! /usr/bin/env perl6) with a one-liner like this (in Perl 5, as a nice gesture to a nice language):
$ perl -pi.bak -e 's/perl6/raku/g' *
It will work on all the files (the
*), or you can specify the filenames
instead. Note that the command makes copies of the files, before the changes, with
«.bak» added to the filename.
Note that the command will replace the text everywhere in the files.