rir has asked for the
wisdom of the Perl Monks concerning the following question:

I've just started playing with Perl 6 Rakudo. I say "Wow."
It is pretty comfortable.

In this process, I realized that my tenacity in solving small things slows me down in learning something larger like Perl. I would do better to slide past the things that don't work and see more parts that do work. You can learn by seeing something work; seeing stuff not work is not so educational for a beginner.

I'm a bit past hello world and would like start with modules. The online references I've read don't address

where to put modules,

if there's a PERL6LIBish thing,

what modules exist,

or how to interface with C or Perl 5. (I don't know if I'm prepared to speak PIR, but I'll consider it.)

We currently don't have a mature distribution system for Perl 6 modules. We're still trying to figure out how to use Perl 5 CPAN without interupting the workflow of Perl 5 CPAN modules.

That said, the quasi-standard is to put module on github, and a basic installer called proto is being worked on.

In the proto project there's a file called projects.list, which lists the modules known to work with Rakudo and proto. Once you'd like to add your module to the list, please join our IRC channel. We'll give you a commit bit, so that you can add your project to projects.list.

Rakudo supports a PERL6LIB enviornment variable which works just the same as PERL5LIB. Also ~/.perl6/lib/ is in the standard library search path. (Proto uses this path for installing modules).

There is a prototypial C interface for Rakudo called zavolaj, which comes with a mysql client example.

There's also a Perl 5 interface called blizkost (Slovak for "closeness" or "proximit"), which Stefan O'Rear has hacked up sufficiently during the last few weeks to build basic Tk windows with it, through Tk. (Note that blizkost requires the latest Rakudo from git, the April release of Rakudo has a bug which prevents blizkost from working).

Just to add to the linguistic comments. "Zavolaj" is a singular imperative, plural would be "zavolajte". "blizkost" (or rather "blÝzkost") is a substantive and a better translation would be proximity (or closeness). Just so that you have some notion about the differences ... in Czech it would be "zavolej/zavolejte" and "blÝzkost" :-) And that's rather the norm, not an exception.