Parrot's 2.6 release is coming up this Tuesday, and I've been put in charge of getting the Squaak tutorial up-to-date. Squaak is a tutorial for creating a compiler from a high-level language to Parrot that has unfortunately become rather outdated. You can find it in its current state here and my partially-updated version on github currently.

The reason that makes it so obsolete is that it is a tutorial for creating compilers using PGE (variously referred to as either the Perl or Parrot Grammar Engine), an old implementation of Perl 6's regexes and grammars, and an old version of Not Quite Perl. At the time the tutorial was written, this was the "standard" way to develop HLL compilers for Parrot, but this is no longer the case. Since then, NQP has gained a regex engine of its own(which is why it is now called NQP-rx, where the rx refers to its implementation of Perl 6's regexes), and NQP-rx has become the preferred tool for creating both the parser and the code-generator of HLL compilers. In addition, the specification of Perl 6 regexes has changed over time; PGE's implementation has not continued to keep up with the spec; NQP's regex engine, however, has. In order to make it easier for Parrot's users to create new HLL compilers, I want to update the tutorial to use modern NQP-rx.

I've already mostly finished updating the first four Episodes of the tutorial and part of the the fifth. I welcome anyone at all to help with what remains (and would be very grateful if someone did). If you're not yet involved in the core development of Parrot but want to change that, this is a great chance to get involved, particularly if you're already familiar with NQP or Perl 6. Just respond to this message or contact me on Parrot's IRC channel (#parrot on irc.perl.org) with your github username if you want a commit bit to the github repository.

An important task for a Parrot committer with more knowledge of git-svn than I is to import my changes from the git repo into the SVN repository in a branch. I initially had it in git because I didn't want to modify it in trunk and I didn't want to create a svn branch for something I wasn't sure I was going to actually get around to working on. Now it's still there because I broke my install of the Perl SVN bindings, which means that git-svn doesn't work for me. Although I could certainly just copy the updated files into SVN, it would be much better if someone could use git-svn to import the history of those changes somehow.

My goal is to have the tutorial updated and merged into Parrot's svn trunk before the 2.6 release Tuesday. Please help make this happen.


In reply to Get involved with Parrot—Help update the Squaak tutorial by tcurtis

Title:
Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post, it's "PerlMonks-approved HTML":



  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, details, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, summary, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.