Aviva Directory » Computers & Internet » Programming » Perl » Raku

The Raku programming language first appeared as Perl 6 in December 2015, and was renamed in October of 2019.

While it remains part of the Perl family, compatibility with Perl was not a goal, although a compatibility mode is part of the specification. The three primary methods of communication used in the continued development of the language are the IRC channel on Libera Chat, a set of mailing lists on the Perl Foundation's servers, and the Git source code repository at GitHub.

According to Larry Wall, the primary designer, the major goal in separating Raku from Perl was the removal of historical warts. During the course of its development, it was decided that Perl 6 would not have backward compatibility with the existing Perl codebase, which means that some code that was correctly interpreted by a Perl 5 compiler would not be accepted by a Perl 6 compiler. Given that backward compatibility is a common goal of new versions of software, the distinction between Perl 6 and previous versions of the language became significant enough that it was decided to rename it.

Nevertheless, there was an intent to "keep Raku Perl," so Raku remains a Perl programming language. In large part, the changes were designed to normalize the language, so that it would be easier for both novice and expert programmers to understand.

The Rakudo implementation targets a number of virtual machines, including the Java Virtual Machine, JavaScript, and MoarVM, the latter of which is a virtual machine built especially for Rakudo and the NQP Compiler Toolchain. A layer between Raku and the virtual machines is known as Not Quite Perl 6 (NQP), which implements Raku rules for parsing Raku. However, Rakudo has not been designated as an official Raku implementation.

Raku was influenced by Perl, Ruby, Smalltalk, Haskell, and JavaScript.

The focus of this part of our guide is on the programming language known as Raku. Online resources for the language itself, any tools designed to facilitate programming in Raku, and Raku user groups, forums, tutorials, guides, or other resources.



Recommended Resources

Search for Raku on Google or Bing