My GSoC weekly report

Paweł Murias pawelmurias at
Wed Jul 3 18:05:21 UTC 2013

Sorry for being late with the report, I got confused and thought the report
was due by Wednesday instead of thursday. :(

Here is the report. Also avalible at (

I tried to mimick the way subroutines are wrapped on rakudo and make test
passed on parrot I commited the code.
And it broke nqp on the jvm. And I realised that rakudo on the jvm uses the
HEAD revision on nqp and not a version specified in
tools/build/NQP_REVISION. And after my commit make test broke on nqp.
I reverted the commit, and Jonathan Worthington figured out that I
misunderstood what p6capture_lex did.
NQP opcodes propably need some kind of docs. I encoutered a crazy one
called locallifetime which is some optimalisation thing I can ignore (<>).
Which one of the primary rakudo/nqp authors wasn't sure what I does, just
explaining it's some kind of ignorable optimalisation opcode.
(As a side note p6capture_lex sets the outer of code ref stored in $!do of
it's arguement) to the current frame of lexicals.)
I implemented a version of that creatively called capture_lex for nqp
(which was slightly more generic way as it didn't assume it's argument was
a Perl6 Code).
I implemented the capture_lex opcode on parrot and nqp, and once make test
passed, I happlily commited it (<>
And I broke rakudo. My commits where reverted and put on a branch. I
realised that the sensible things was to just work on the more complex
role.t test rather then spend a ton of time on hairy nqp refactors.
I'm currently doing that.

One quick solution I'm using to make the generated JavaScript easier to
read (which is a large part of debugging) is to emit vim folds (<>


/* deserialization code {{{*/
A couple of dense screens mostly consisting of a large sha1 encoded string
/* }}}*/

/* main {{{*/
/* {{{ */
Things can be arbitrarly nested to provide increasing levels of
increasingly ugly details.
/* }}} */
/* }}} */

As I no longer have an distracting exams at university work on my project
should be now picking up a faster pace.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the parrot-dev mailing list