Posts in this category

Tue, 25 May 2010

My personal "I want a PONIE" wish list for Rakudo Star

Permanent link

In June we'll see a special Rakudo release codenamed Rakudo Star. I've done some development with and of Rakudo, and here's the list of features and bug fixes that I think are essential for a successful and well-received release:

  • Backtraces with Perl 6 file names and line numbers (Update 2010-05-30: jnthn implemented those)
  • Proper closure cloning (Update 2010-06-07: pmichaud has fixed it)
  • Match objects which return Perl 6 (and not parrot) data structures (Update 2010-05-30: pmichaud laid the foundations for that, and I got it to a "good enough" state).
  • /<foo>/ should pick up a regex named foo from the lexical scope, not only from method lookup. (Update 2010-07-21: This is not going to happen, since the spec will change significantly at this point).
  • Using the same list or iterator twice returned from map or gather/take should work (Update: pmichaud fixed that in The Big List Refactor, which was merged shortly before the 2010.06 release).

Other things that I consider nice to have, but not essential:

  • $/ should be available in the RHS of s/// (seems hard to do with current Parrot semantics)
  • use currently only accepts pairs, not proper argument lists. Would be nice to have that.
  • General Whatever-currying (ie * op 3 returns a closure of type WhateverCode) (Update: jnthn implemented it one or two days after this blog post)
  • Currently user-defined operators hide candidates of the same name from outer scopes. This is rather annoying.

[/perl-6] Permanent link