2017.39 Smarting up the Pool

Jonathan Worthington elaborates on his new ThreadPool implementation in an extensive blog post, which was made possible by the sponsoring of Vienna.pm. A recommended read if you want to keep up to date on the features and performance of asynchronous processing with Rakudo Perl 6! In short, there are now 3 queues internally: one for timers, one for workers that sequentially process, and one for general purpose activity. There’s now also a “Sufficiently Smart Supervisor” thread that looks at the state of the other threads about 100x per second and decides if adding more threads would make sense or not. Exciting times!

Performance analysis tooling

Timo Paulssen submitted a grant proposal to improve the performance analysis tools of Rakudo Perl 6. Judging by the comments so far, he’s not the only one wanting to see this happen. Please leave your comments if you also have an opinion about this proposal!

Other Core Developments

Jonathan Worthington was responsible for the most of last weeks commits. I guess everybody else was just watching in awe, or busy with things that didn’t make it into the main rakudo repo just yet. Notable exceptions are:

  • Samantha McVey finally fixed the last bugs in the utf8-c8 encoding: this is the encoding that tries to encode as utf8, but which creates temporary synthetic codepoints for those sequences that are not valid UTF-8, instead of giving up.
  • David Warring made sure that subtypes actually have an .isa method.
  • And some other minor fixes and improvements.

Other Blog Posts

Meanwhile on Twitter

Meanwhile on StackOverflow

Meanwhile on perl6-users

Ecosystem Additions

Winding Down

Apart from all the visible work Jonathan and Samantha have done this week, there was a lot going on behind the scenes. One of them promises to make object creation in Rakudo Perl 6 at least 10% faster. Too bad we couldn’t report about it this week. So be sure to check out the next issue of the Perl 6 Weekly!

Got something to note?