Originally announced as Perl 6 in 2000, this complete language redesign diverged so far from Perl 5 that it was renamed to Raku in 2019. The 15-year development period and broken backward compatibility caused a dramatic community split and contributed to Perl's decline.
Raku runs on MoarVM (primary) or the JVM via the Rakudo compiler. Features include grammars (built-in parsing), gradual typing, multiple dispatch, meta-object protocol, concurrency primitives (promises, channels, supplies), lazy evaluation, and a completely redesigned regex engine. No code-level compatibility with Perl 5.
At the 2000 Perl Conference, Larry Wall announced Perl 6 in his 'State of the Onion' address, declaring it would be 'the community's rewrite of Perl.' The goals were ambitious: remove 'historical warts,' make easy things stay easy while hard things get easier, and completely overhaul the language's internals and APIs. Crucially, backward compatibility with Perl 5 was explicitly not a goal — code valid in Perl 5 might not compile in Perl 6.
What followed was a 15-year development odyssey that many perceived as vaporware. Perl 6's first stable release (v6c 'Christmas') did not arrive until December 2015. During this extended development period, many developers permanently abandoned Perl for Python, Ruby, and other languages, contributing to the perception that 'Perl is dead.' The Perl 5 and Perl 6 communities were approximately 90-95% disjoint — they were essentially separate communities sharing a name.
The naming conflict became a persistent source of hurt feelings and strife. Perl 6's existence created confusion about whether Perl 5 was still being developed (it was, with annual releases since 2010). In August 2019, the Perl 6 community proposed renaming the language to 'Raku.' Larry Wall approved the rename in October 2019, invoking a Biblical parable about not putting new wine in old wineskins. The name 'Raku' came from the alias that Wall had reserved for Perl 6 on CPAN.
Raku is technically not a code fork of Perl 5 — it is a clean-room redesign. However, the community split it caused, the resources it diverted, and its impact on Perl's trajectory make it one of the most significant 'fork-like' events in programming language history. The communities are now working to establish full independence from one another while acknowledging shared origins.
Larry Wall announces Perl 6 at the Perl Conference
Pugs, first experimental Perl 6 compiler (in Haskell), generates early excitement
Rakudo Star (usable Perl 6 distribution) first released
Perl 6 v6c 'Christmas' — first stable release after 15 years
Larry Wall approves renaming Perl 6 to Raku
The prolonged Perl 6 development contributed significantly to Perl's decline as developers migrated to Python and Ruby rather than waiting. The community split drained energy from both Perl 5 and Perl 6/Raku development. The rename to Raku was a rare case of a major language officially acknowledging it had diverged into a separate language.