Brief introduction

Using Raku™ official documentation

Documenting a large language like Raku has to balance several contradictory goals, such as being brief whilst being comprehensive, catering to professional developers with wide experience whilst also being accessible to newcomers to the language.

Note the recent name change to Raku from Perl 6 has resulted in some objects having changed names and their former names, while still available, are deprecated and their use is not recommended in new code. Those items are shown in the following table:

Raku object names versus deprecated Perl 6 names
Raku Perl 6 Notes
raku perl routine
*RAKULIB PERL6LIB environment variable for module paths (*NYI)
.raku .p6 file extension for Raku scripts
.rakumod .pm6 file extension for Raku modules

For a quick hands-on introduction, there is a short annotated programming example.

For programmers with experience in other languages, there are a number of Migration guides that compare and contrast the features of Raku with other languages.

A number of Tutorials cover several areas in which Raku is particularly innovative. The section headers should help navigate the remaining documents.

There are a number of useful resources listed elsewhere on the site. These include articles, books, slide presentations, and videos.

It has been found that newcomers to Raku often ask questions that indicate assumptions carried over from other programming paradigms. It is suggested that the following sections in the Fundamental topics section should be reviewed first.