Porting CGI::Application to Perl 6 has been a great experience.I offer these three reasons for others considering porting a module to Perl 6.
- P Porting a module by hand to Perl 6 makes a meaningful task of the fun of learning a new language. It's a great way to learn Perl 6.
- Porting makes a great code review. As part of porting CGI::Application, I found a number of ways to improve and simplify the code and test suite. Sometimes the Perl 6 features help with that, but often there is benefit just from reviewing the code closely...especially old code. When porting a function the popular CGI.pm module, I found and (submitted a patch for) an old bug where HTML was not properly escaped. From the experience, you'll likely find ways to improve your Perl 5 code, now.
- Porting modules helps the Perl 6 effort. At this stageof Perl 6 development you may run into a bug in Pugs or a part of the documentation that is not clear. By providing constructive feedback and submitting tests, you provide valuable help to the language designers and implementors. You might even get sucked into help more yourself! Not to mention, open source modules your produce will help other Perl 6 users directly.
While I wouldn't yet recommend using Pugs for production now, it's a great time get to involved.