Home

Raku

Raku is a member of the Perl family of programming languages. It was originally conceived as Perl 6, a major redesign of Perl 5 intended to provide a modern, multi-paradigm language with a rich feature set while remaining true to Perl’s heritage. Development began in the early 2000s through the Perl Foundation and a community of contributors. In 2019 the language was formally renamed Raku to emphasize its independence from Perl 5 and to reduce confusion around Perl 6.

Rakudo is the primary implementation of Raku, compiling to MoarVM bytecode and running on MoarVM at its

Raku emphasizes multi-paradigm programming. It supports imperative, object-oriented, and functional styles, with features such as optional

Governance is maintained by the Raku Steering Committee (RSC), which coordinates language design and direction, with

core.
There
is
also
a
JVM
backend
for
Raku,
enabling
execution
on
the
Java
platform.
The
language
is
built
with
the
Not
Quite
Perl
(NQP)
subset
used
to
bootstrap
compilers
and
to
support
alternative
runtimes.
The
standard
distribution
historically
centered
on
Rakudo,
with
a
broad
ecosystem
of
modules
and
tools.
static
typing,
signatures
for
subroutines,
and
a
rich
object
system
based
on
roles.
It
has
powerful
grammar
and
regex
facilities,
including
user
defined
grammars
for
parsing.
The
language
includes
gradual
typing,
enabling
both
dynamic
and
static
typing
disciplines.
Concurrency
is
supported
through
constructs
such
as
promises
and
supplies,
enabling
asynchronous
and
data-flow
programming.
Unicode
is
well
supported,
and
the
language
places
emphasis
on
expressiveness
and
readability.
ongoing
stewardship
by
the
community
and
The
Perl
Foundation.
Raku
is
used
for
scripting,
data
processing,
text
processing,
automation,
and
various
domain
tasks
where
a
flexible,
high-level
language
is
beneficial.