Raku

From Gentoo Wiki
Jump to:navigation Jump to:search
This article is a stub. You can help by expanding it.

Raku is a high-level, general-purpose, and gradually typed programming language. Raku is not tied to a specific programming paradigm; it supports procedural, object oriented, and functional programming.

The reference implementation of the Raku programming language has several major components:


Raku was created as both a specification and a test suite. Any implementation that passes the test suite Raku/roast is considered to be Raku. Thus, while MoarVM is Raku's default virtual machine it's not the only virtual machine that Raku supports. Currently, Raku can be run from within the Java and JavaScript virtual machines and more virtual machine targets are expected to follow.

Notable features

  • Multi-paradigm: procedural, object oriented, and functional programming styles are supported.
  • Grammars combine named regexes in a hierarchy with human readable rules and grapheme-level Unicode support to enable advanced text processing capabilities far beyond that of standard PCRE-style regular expressions.
  • A concurrency and async model that ensure that non-linear code is easy to read and maintain.
  • Native support for rational numbers which permits direct comparison of floating point numbers without concern for any accumulated rounding errors that would occur in other programming languages.
  • Lazy evaluation which enables features such as infinite sets.
  • Low boilerplate object oriented programming.

See also

  • MoarVMRakudo compiler's virtual machine for the Raku Programming Language.
  • NQP — a lightweight Raku-like environment for MoarVM, JVM, and other virtual machines.
  • Bash — the default shell on Gentoo systems and a popular shell program found on many Linux systems.
  • Perl — a general purpose interpreted programming language with a powerful regular expression engine.
  • Java — a programming language, originally developed by Sun Microsystems

External resources