# Introduction to Raku
{id: introduction-to-raku}

## Getting started
{id: getting-started}
{i: Rakudo}
{i: MoarVM}
{i: JVM}
{i: Niecza}
{i: CLR}
{i: Pugs}


* Raku is a specification and a set of tests.
* Any compiler that passes all the tests is considered to be a valid Raku compiler.
* There are several compilers for Raku.
* As of today, they are all partial and implement only a subset of the language.

* [Rakudo](http://rakudo.org/) can run on any one of the following back-ends: [MoarVM](http://moarvm.com/), the [JVM](http://en.wikipedia.org/wiki/Java_virtual_machine).
* [Niecza](http://github.com/sorear/niecza) is a compiler targetting the Common Language Runtime (.NET and Mono).
* Pugs written in Haskell was the first usable implementation, but it is currently only minimally maintained.

We are going to use Rakudo with MoarVM.

## Other resources
{id: other-resources}
{i: IRC}
{i: mailing list}

There are lots of free resources for learning Raku. Probably the most central place is the <a href="http://www.raku.org/">Raku community site</a>, that has lot of other links.

* [Raku documentation](http://docs.raku.org/)
* The most active place to ask about Raku is the #raku [IRC channel](https://raku.org/community/irc).
* [Raku Community](https://raku.org/community/)
* [Learn Raku in Y minutes](https://learnxinyminutes.com/docs/raku/)
