<?xml version="1.0" encoding="windows-1252"?>
<node id="846772" title="Getting Involved with Perl 6 - 2010" created="2010-06-27 08:12:03" updated="2010-06-27 08:12:03">
<type id="120">
perlmeditation</type>
<author id="616540">
moritz</author>
<data>
<field name="doctext">
&lt;h1&gt;&lt;a name="getting_involved_with_perl_6___2010"&gt;Getting Involved with Perl 6 - 2010&lt;/a&gt;&lt;/h1&gt;
&lt;p&gt;Perl 6 is being developed at a steady pace, and if you're interested, it's
quite easy to help. No need to be a compiler writer wizard or a god of Perl 6
specification - any ordinary hacker can help.&lt;/p&gt;

&lt;p&gt;&lt;a name="__index__"&gt;&lt;/a&gt;&lt;/p&gt;

	&lt;ul&gt;

		&lt;li&gt;&lt;a href="#write_some_code"&gt;Write some code&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="#write_a_module"&gt;Write a module&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="#web_things"&gt;Web things&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="#test_suite"&gt;Test Suite&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="#compilers"&gt;Compilers&lt;/a&gt;&lt;/li&gt;
		&lt;ul&gt;

			&lt;li&gt;&lt;a href="#rakudo"&gt;Rakudo&lt;/a&gt;&lt;/li&gt;
			&lt;li&gt;&lt;a href="#mildew"&gt;Mildew&lt;/a&gt;&lt;/li&gt;
			&lt;li&gt;&lt;a href="#sprixel_csmeta"&gt;Sprixel/csmeta&lt;/a&gt;&lt;/li&gt;
			&lt;li&gt;&lt;a href="#perlito"&gt;perlito&lt;/a&gt;&lt;/li&gt;
			&lt;li&gt;&lt;a href="#hibernating_projects"&gt;Hibernating projects&lt;/a&gt;&lt;/li&gt;
		&lt;/ul&gt;

		&lt;li&gt;&lt;a href="#guided_contributions"&gt;Guided Contributions&lt;/a&gt;&lt;/li&gt;
		&lt;li&gt;&lt;a href="#summary"&gt;Summary&lt;/a&gt;&lt;/li&gt;
	&lt;/ul&gt;

&lt;hr name="index" /&gt;
&lt;!-- INDEX END --&gt;

&lt;h2&gt;&lt;a name="write_some_code"&gt;Write some code&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Yes, it's that easy. Just write some Perl 6 code. If you think there's
something wrong with how [http://rakudo.org/|Rakudo] compiles and executes it,
submit a bug report by sending a mail to [mailto://rakudobug@perl.org].&lt;/p&gt;

&lt;p&gt;This is already a huge help for the Rakudo development team.&lt;/p&gt;
&lt;p&gt;If you don't know how to write Perl 6 code, grab the latest PDF from the
[http://github.com/perl6/book/downloads|Perl 6 book]. If you find anything
unclear, please let us know (either via [http://perl6.org/community/irc|IRC],
or the [http://perl6.org/community/|perl6-compiler mailing list], or by
opening an issue in the github bug tracker).&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h2&gt;&lt;a name="write_a_module"&gt;Write a module&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;One step more than writing some Perl 6 code is writing re-usable Perl 6 code.
There's a [http://modules.perl6.org/|list of about 50 Perl 6 modules]. You can
pick your favourite Perl 5 module, or invent a new one, and let us know about
it, so that we can include it in that list.&lt;/p&gt;
&lt;p&gt;The modules which are easiest to port are pure Perl modules which are not
heavy on IO (though pure Perl is not a requirement -- there's also a
[http://github.com/jnthn/zavolaj|native call interface (NCI)] for calling C
code).&lt;/p&gt;
&lt;p&gt;Of course you can also pick up an already existing Perl 6 module, and improve
it. The community is very open to such contributions, and for many modules
you'll get a commit bit to the source repository after your first patch.&lt;/p&gt;
&lt;p&gt;For example you could help to [http://github.com/moritz/CGI-Application|port
CGI::Application to Perl 6]. Or add more plot types and visual candy to
[http://github.com/moritz/svg-plot/|SVG::Plot], a plotting/charting library
with SVG output.&lt;/p&gt;
&lt;p&gt;The upcoming [http://use.perl.org/~pmichaud/journal/40407|Rakudo Star release]
aims to make it easy for developers to write their own modules, and we hope
that will significantly increase the number of Perl 6 modules.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h2&gt;&lt;a name="web_things"&gt;Web things&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;We are always looking for contributors to our various websites, for example
[http://perlgeek.de/blog-en/perl-6/contribute-now-try.rakudo.org.writeback|a
web shell for Rakudo at try.rakudo.org].&lt;/p&gt;
&lt;p&gt;There's a also [http://www.perlfoundation.org/perl6/index.cgi?perl_6|a wiki
that needs constant updating].&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h2&gt;&lt;a name="test_suite"&gt;Test Suite&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;As always, the test suite needs love, new tests and adaptions according to the
latest spec changes.&lt;/p&gt;
&lt;p&gt;There's a [http://svn.pugscode.org/pugs/t/spec/README|README] for some
information about the test suite, for more questions you can ask me directly.&lt;/p&gt;
&lt;p&gt;It would also be awesome if somebody could collect all the information about
the test suite, and produce a website about it.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h2&gt;&lt;a name="compilers"&gt;Compilers&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;In my [id://771635|previous] [id://690945|how-to-get-involved]
[id://628746|posts] I have strongly emphasized what you can do for various
compilers, but I think in retrospect that it has been unwise.&lt;/p&gt;
&lt;p&gt;Even though writing parts of a compiler
[http://perlgeek.de/blog-en/perl-6/you-are-good-enough.html|is not harder than any other program
that parses text files, transforms data and produces output], people seem to
have deep respect or awe towards compiler writing.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name="rakudo"&gt;Rakudo&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Much of [http://rakudo.org/|Rakudo] is 
written in Perl 6 (or subsets thereof), and little knowledge of  Parrot
is required to work with it. If you want to contribute,
join #perl6 and ask what can be done, or
pick an item from the
[http://github.com/rakudo/rakudo/blob/master/docs/ROADMAP|ROADMAP] and see if
you can do anything for any of them.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name="mildew"&gt;Mildew&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;[http://www.perlfoundation.org/perl6/index.cgi?mildew|Mildew] uses
[TimToady]'s standard grammar, and compiles down to
[http://www.perlfoundation.org/perl6/index.cgi?smop|SMOP] code.&lt;/p&gt;
&lt;p&gt;If you are interested in the meta object protocol, contact [ruoso] or pmurias on
#perl6.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name="sprixel_csmeta"&gt;Sprixel/csmeta&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;[diakopter] started [http://code.google.com/p/csmeta/|csmeta], a project to
provide a sufficiently flexible .NET runtime environment to run Perl 6 on top
of it.&lt;/p&gt;
&lt;p&gt;Currently various approaches at compiling Perl 6 code to the intermediate
language are explored; if you're an explorer too, contact diakopter or sorear
on #perl6.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name="perlito"&gt;perlito&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;[http://www.perlito.org/|Perlito], formerly known as MiniPerl6, 
supports compilation to several other programming languages and backends, for
example
[http://www.nntp.perl.org/group/perl.perl6.announce/2010/01/msg614.html|Go,
the JVM, javascript], Common Lisp and Perl 5.&lt;/p&gt;
&lt;p&gt;I have been mostly out of touch with the perlito developers, but if that
approach appeals to you, contact [fglock] and ask about possible
contributions.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h3&gt;&lt;a name="hibernating_projects"&gt;Hibernating projects&lt;/a&gt;&lt;/h3&gt;
&lt;p&gt;Pugs and elf have not been developed any further since my post last year, and
I consider them hibernating until proven otherwise.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h2&gt;&lt;a name="guided_contributions"&gt;Guided Contributions&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;Maybe you don't want to pick a project yourself, and rather take some guided
excursions into various areas of Perl 6? Then you might be interested in
[http://perlgeek.de/blog-en/perl-6/contribute-now-announce.html|this series of
weekly, guided tasks] to get you started with contributing to Perl 6.&lt;/p&gt;
&lt;p&gt;So far we had tasks related to various different Perl 6 projects:
Some websites, the test suite, Rakudo, and the Perl 6 book currently being written.  Some of the contributors attracted that way have stayed, and contributed
various other stuff.&lt;/p&gt;
&lt;p&gt;Subscribe to the [http://planetsix.perl.org/|Planet Six] RSS feed to keep
informed about any new weekly tasks.&lt;/p&gt;
&lt;p&gt;
&lt;/p&gt;
&lt;h2&gt;&lt;a name="summary"&gt;Summary&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;There are many different things you can do to help Perl 6 today. 
Only a few of these tasks require deep hacking wizardry - most just
require motivation, and the will to communicate with the rest of the community.&lt;/p&gt;
&lt;p&gt;If you think Perl 6 is a good idea, don't just wait - take some initiative!&lt;/p&gt;


&lt;div class="pmsig"&gt;&lt;div class="pmsig-616540"&gt;
[http://perl6.org/|Perl 6] - links to (nearly) everything that is Perl 6.
&lt;/div&gt;&lt;/div&gt;</field>
</data>
</node>
