Which Will It Be? Winxed or NQP?



As most of you know, my latest dilemma has been deciding on which language to use for the debugger: nqp-rx or Winxed. I'm sure most of you are thinking, "Really? We're still on this?" Sadly, yes. The end of the semester is this Friday which has been making it quite hard to dedicate time to this. I spent this past weekend setting up this blog so that I could still stay connected with my mentor and the rest of the community even on those days where the homework just never seems to end. I can't believe that I was actually considering taking a summer class during GSoC. Clearly, that would be a bad, bad idea.

Anyway, I digress.

I'll try to keep things brief here. You can read my full message to parrot-dev here.

Winxed has the advantage of being clean, fast, and stable. However, it is not included with Parrot by default and I want to keep dependencies to a minimum. Dukeleto made the suggestion that I include the PIR-generated code with Parrot, thus eliminating any dependencies. This is something to consider. I'm also quite sure how I would be able to integrate parrot-instrument if I use Winxed.

Conversely, nqp-rx has the advantage of regular expressions, inline PIR, and having a Perl-like syntax. However, it's quite slow, still a little quirky, and poorly documented. Coming from a Perl background, the Perl-like syntax is definitely a plus. nqp-rx was designed for Rakudo Perl 6 development and as such, one of it's greatest features is grammars. However, I'm building a debugger; not a language parser. So after taking away one of it's most powerful features, I must consider, "is there anything left worthy of excitement?"

This has taken much longer than I would have liked. As such, I'd like to reach a decision within the next few days. Definitely before the Parrot Developer Summit this weekend.

In the next few days, I plan on doing some nqp-rx and Winxed hacking to get a feel for each language. I'm going to be manipulating bytecode quite a bit with this project so that's going to be one of the things I'd like to do with both languages. You can be sure to hear about my findings throughout this week.

 
 
blog comments powered by Disqus