2011.09.17 in #8
This is not enough!
One of the biggest issues I had with Rakudo Perl 6 was its speed. I can program around some bugs. I can implement some missing CPAN modules but if it takes minutes to run my code instead of seconds I'll easily lose my patience. Jonathan Worthington describes how, getting a new and faster machine got him to improve the speed of Rakudo even further. - I think it is time for me to take another look at Rakudo.
2011.10.15 in #13
An optimizer lands, bringing native operators
Jonathan Worthington describes his work that will be included in the October release of Rakudo. This brings the performance of Rakudo, in some very specific cases, to be - let me be careful here - not too far from that of Perl 5.
2011.11.09 in #16
Slides from the Optimizing Rakudo Perl 6 talk
Jonathan Worthington published his slides.
2011.11.20 in #17
Rakudo: this week's release, and the next Rakudo Star
A few days ago version #46 of Rakudo came out and in this article Jonathan Worthington describes what is in the new version: 'Big Integer Support', 'Protoregexes with LTM', 'CATCH improvements', 'Improved MAIN argument parsing', '6model REPR API 2' just to copy the titles. Detailed explanation in the blog post.
2011.12.14 in #21
Meta-programming: what, why and how
This article by Jonathan Worthington can be interesting to anyone who uses Object Oriented programming.
2012.01,29 in #27
This month's Rakudo Star release - and what's coming next
Jonathan Worthington gives his account on why this release is so important for him.
2012.01.15 in #25
Looking back, looking forward
Jonathan Worthington is looking around himself, and especially at the progress Perl 6 made in the last year and his plan for the next year.
2012.02.10 in #29
Bounded serialization, better regexes and better errors
by Jonathan Worthington
2012.03.09 in #33
Meta-programming slides, and some Rakudo news
As usual Jonathan Worthington provides an excellent snapshot of what's going on in the development of Perl 6. While I have not been able to follow the development recently I wish I had some time to do that. What he write seems to be very exciting.
2012.04.05 in #37
Back from vacation, hackathon coming up!
Some pretty pictures and some plans by Jonathan Worthington.
2012.04.21 in #39
Hackathoning in Oslo
by Jonathan Worthington
2012.05.08 in #42
Since the Hackathon...
After the fun and productive hackathon in Oslo, Jonathan Worthington is back at his own desk planning to implement many additional parts of Perl 6.
2012.08.28 in #58
A Rakudo Debugger
Jonathan Worthington had a surprise for the all the Perl 5 and Perl 6 developers when he showed this during YAPC::EU. In this article he explains how you can use the debugger.
2012.08.31 in #58
Rakudo Star 2012.08 released
This is the regular, quarterly release of Rakudo Star that includes both the Perl 6 compiler and a bunch of external modules. It even contains the newly released debugger of Jonathan Worthington. (See above.)
2012.10.03 in #63
YAPC::Asia 2012 by Jonathan Worthington
It's always a lot of fun reading the reports of Jonathan.
2012.10.08 in #64
I'll be speaking at 'We Actually Build Stuff'
Jonathan Worthington is going to Lithuania to talk about his work on the Rakudo Perl 6 compiler. (30th November 2012)
2012.10.24 in #66
Rakudo Debugger Updates
Jonathan Worthington shows off with his latest improvements on his Perl 6 debugger project. Attribute introspection, trace points, 'step over' and 'step out' added. Oh and you can now step through a Perl 5 regex as well.
2012.10.26 in #66
The cooperation between Carl Mäsak, Jonathan Worthington, and a bottle of Porto, resulted in a port of JSON::Path to Perl 6.
2012.11.08 in #68
Lots of improvements coming in the Rakudo November release
Jonathan Worthington explained a few of the changes in Rakudo. The one I most liked was the lexically scoped operators. Basically you can change the grammar of the language within a block. Shall we say DSL?
2013.02.01 in #80
A look at the preparations behind the JVM port, and a progress update
If you want your head to spin, read the about the dessign work of Jonathan Worthington. In a related note and much more down to earth, Nicholas Clark reported that 'NQP JVM prototype faster than Perl 5'. (Search for his e-mail, if interested.)
2013.04.18 in #91
NQP on JVM bootstrapped, soon will land in NQP master
Another huge step with Jonathan Worthington. NQP (Not Quite Perl) is basically the core that Rakudo, the Perl 6 compiler is built on. (Minus a few areas where I think it still depends directly on Parrot.) Having NQP on the JVM means a large part of Rakudo can already work on the JVM.
2013.05.15 in #95
Rakudo on JVM progress update, and some questions answered
Jonathan Worthington keeps us up-to-date with what is happening in the world of Rakudo.
2013.07.09 in #103
All about Perl 6 – interview of Jonathan Worthington (Part 2 of 3)
So how does the JVM back-end and the new MoarVM back-end relate to each other, and why did they keep the development of MoarVM secret? How will Perl 5 inter-operate with Perl 6 on top of the MoarVM?
2013.07.15 in #104
Rakudo JVM News: More tests, plus Thread and Promise prototypes
Promises are good when they are kept. And here we go, Jonathan Worthington has already added Promises to the JVM back-end of Rakudo Perl 6. It seems he is already working in parallel, or I don't know how he manages to get so much done so quickly.
2013.07.15 in #104
All about Perl 6 – interview of Jonathan Worthington (Part 3 of 3)
In this part Jonathan talks about the considerations in implementing Perl on top of a stack based machine like the JVM and on a register based virtual machine like Parrot or the MoarVM. He also discussed the possibility of a virus eating all the C-programmers, hiking in the Swiss Alps, and the proliferation of Perl forks.
2013.09.17 in #113
Material from the Rakudo and NQP Internals course
Jonathan Worthington writes about the 2-day course he ran a few weeks ago and links to the material that was released under Creative Commons license.
2013.10.11 in #116
NQP gets MoarVM support, cursor reduction, and other news
Jonathan Worthington offers another peek into the labs of Perl 6.
2014.01.24 in #131
January Rakudo Compiler Release: MoarVM support and much more
Jonathan Worthington explains the significance of the most recent release of the Rakudo Perl 6 compiler.
2014.02.02 in #132
Perl 6: what can you do today? - The state of the butterfly
The slides of Jonathan Worthington for his talk at FOSDEM. (thanks to Steve Mynott for the link)
2014.04.12 in #142
Optimization, concurrency, and Moar
Jonathan Worthington provides more details on the recent developments in Rakudo.
2014.04.17 in #143
Racing to writeness to wrongness leads
Jonathan Worthington writes about C# and how he implemented threading in Perl 6 running on top of the JVM. It isn't easy to read, but as usual it is filled with sentences like this one: 'If anything, we want such inevitably unreliable programs to reliably fail, not reliably pretend to work.'
2014.05.25 in #151
Reactive Programming in Perl 6
Bored by the same old programming stuff? How about taking a walk on the reactive programming side, in Perl 6, with Jonathan Worthington?
2014.06.25 in #153
What I've been working on, and what's coming up
Jonathan Worthington, one of the key core developers of Perl 6 who also gives great presentations, gives us some insite into his plans: Asynchronous Bits, MoarVM's dynamic optimizer, JIT Compilation for MoarVM, and various Rakudo fixes an optimizations.
2015.04.20 in #196
Jonathan's grant report
Jonathan's been working on Normal Form Graphemes for Unicode support, the
fatal pragma, and some other things besides.
2015.04.30 in #197
This week: the big NFG switch on, and many fixes
Rakudo on MoarVM uses NFG (Normal Form Grapheme) now
2015.05.15 in #199
Last week: smaller hashes, faster startup, and many fixes
Jonathan covers what he did in the first week of May (he's catching up after OSDC.no): reducing the memory used by hashes, improving Rakudo's startup time on MoarVM, and fixing various bugs.
2015.07.02 in #206
Grant status update
A mostly administrative overview of the past 3 month of work Jonathan has done.
2015.07.09 in #207
Multi-dimensional arrays – and plenty more
Jonathan's write-up of work done in late June and early July: adding support for multi-dimensional arrays in MoarVM, changes to the regex engine, and a bunch of bug fixes.
2015.07.15 in #208
This week: less than hoped, but still good stuff
Subtitles by Jonathan: Multi-dimensional array progress; &?BLOCK and &?ROUTINE; when/default semantics; One more regex engine bug down; And the usual other little bits
2015.07.23 in #209
This week: concurrency stuff, multi-dimensional stuff, stuff stuff…
Jonathan had a productive week: getting multi-dimensional arrays working in the JVM (following MoarVM, which was done previously); thinking through the design for
await to not take up a thread when waiting for the promise to complete; thinking about a friendly syntax for supplies; some useful MoarVM bytecode instrumentation; fixed some regexp issues; and improved some error messages. In short: "Stuff Got Done".
2015.08.01 in #210
This week: too little sleep and too little Perl 6
This week it's baby steps for Jonathan, as his time for Perl 6 was scant. But baby steps are steps still -- he still managed to do some work on multi-dimensional arrays, improve some error messages, and also removed a road-block for the next release.
2015.08.05 in #211
Fixing lots of RTs, digging into the GLR
Jonathan is taking the lead on the Great List Refactor, he fixed some issues related to our-scoped things inside roles, and a bunch of other thing besides.
2015.08.27 in #214
Parallelism, Concurrency, and Asynchrony in Perl 6
The video of Jonathan's talk at YAPC::Asia Tokyo.
2015.09.22 in #218
Perl 6 Release Goals Initial Grant Completed
See also the latest release of Rakudo Star...
2015.09.22 in #218
Jonathan has visited YAPC::Asia and the Swiss Perl Workshop and in between he has worked on major tasks in the development of Rakudo Perl 6. There is a link to the video and the slides of his talk on Perl 6's concurrent, parallel, and asynchronous features.
2015.09.30 in #219
Those weeks: much progress!
Perl6. Many progress. Such close to Christmas.
2015.10.06 in #220
Things that won't make it into the first release of Perl 6
A list of the things that are explicitly not going to be done for the first release of Perl 6.
2015.10.15 in #221
Last week: Unicode case fixes and much more
On the plate: Fixing some Unicode issues for Christmas; Fixing some issues with phasers; Some regex engine work; and few other bits.
2015.11.21 in #226
What one Christmas elf has been up to
60 out of 100 issues that are needed for the Christmas release were fixed. NFG improvements is just one subject. Normal Form Grapheme is an efficient way of providing strings at grapheme level. Apparently there is an example when Unicode standard and 'how people think' differs.
2015.12.05 in #228
Getting closer to Christmas
Last time, John was counting 40 tickets standing between us and Christmas. Now the number is down to 20.
2015.12.14 in #230
Day 14 – A nice supplies: syntactic relief for working with asynchronous data
2015.12.26 in #231
Reflecting, celebrating, and looking forward
Jonathan's reflects on his journey with Perl 6 so far, and what comes next.
2016.01.05 in #233
Not guts, but 6: part 1
Jonathan takes us along his implementation of his STOMP client.
2016.02.09 in #238
A few words on Perl 6 versioning and compatibility
Jonathan outlines his Perl 6 will be versioned, including the language definition, the Rakudo compiler, and MoarVM.
2016.02.10 in #238
Text, Grammar, Tree - the 3
Yary had been thinking about writing a reversible grammar, so you could feed it a parse tree and it would generate the original text (that had produced the parse tree). Raiph pointed out in the comments that Jonathan Worthington has a proof of concept already.
2016.03.06 in #241
Digging into the performance/reliability work
An update on Jonathan's latest grant work on performance and reliability of Perl 6. The bulk of it was making object accessors a lot faster.
2016.03.21 in #244
A whole heap of work
One would heap the puns end with this one...
2016.03.27 in #244
...but, as you may guess, heap's not gonna happen.
2016.04.05 in #246
Small, but welcome, fixes
A short update from Jonathan on his recent Perl 6 work.
2016.04.15 in #247
Heap heap hooray!
2016.04.21 in #248
Framing the problem
Way too much information about call frames, also known as invocation records.
2016.04.30 in #249
Refactoring and torture
It seems there really is no such thing as too much information about call frames!
2016.06.05 in #202
So first we all need to congratulate Jonathan on his nuptials. Oh, and he did some Perl 6 stuff too!
2016.06.12 in #255
'grinding out performance improvements
2016.07.23 in #261
He describes it as a shorter post, but but the time he's walked us through the 10 bugs he fixed (in one day!), it's not so short.
2016.08.22 in #266
Concurrency bug squishing: part 1
2016.09.07 in #268
Perl 6 Performance and Reliability Engineering - Grant Extension Request
2016.11.25 in #279
Perl 6 is biased towards mutators being really simple. That's a good thing.
A discussion on simple accessors as a path to sanity and happiness, and how Perl 6's design benevolently tries to veer you in that direction (while still allowing you to jump over the safety railing because, hey, that's the Perl way).
2016.12.01 in #280
Taking a couple of steps backwards to fix a GC bug
Follow along as Jonathan gets into the nitty-gritty of fixing a garbage collection bug in MoarVM. He gets a bonus for saying "less is moar".
2016.12.17 in #282
Testing in virtual time
2017.03.16 in #295
Considering hyper/race semantics
Jonathan introduces hyper and race, two Perl 6 methods which will be getting nailed down in the next release of the Perl 6 language definition, 6.d (the language is defined by the testsuite).
2017.04.22 in #300
Massively reducing MoarVM Fixed Size Allocator contention
Jonathan has made significant improvements to how MoarVM handles memory allocation in multithreaded applications.
2017.05.12 in #303
Looking for Perl 6, Rakudo, and MoarVM development funding
Do you want Perl 6 to further improve? Jonathan is one of the key people who can make that happen, but he also needs to eat. So this is your opportunity to chip in or to get your company to use their bank account to support the work on Perl 6.
2017.06.08 in #307
Sorting out synchronous I/O
Jonathan describes some work he did to fix a longstanding I/O bug in MoarVM, funded by Nick Logan.
2017.07.02 in #310
Optimizing reading lines from a file
Jonathan describes some work he did recently to improve performance for a common idiom: read a file line by line and process each line. At first Perl 6 took 2.5 times as long as Perl 5, but by the end he got it down to only a factor of 1.1 times slower.
2017.08.06 in #315
MoarVM Specializer Improvements Part 1: Gathering Data
If I understand it correctly, in a nutshell, this specialization, or in short spesh, is about stripping out late-binding and creating, well, specialized versions of it. But don't take my understanding. Read it yourself!
2017.08.26 in #318
This seems to be all the rage now in the Perl 6 world: Development tools for building services and distributed systems in Perl 6
2017.09.17 in #321
MoarVM Specializer Improvements Part 2: Planning
2017.09.23 in #322
Rakudo gets a new thread pool
Jonathan describes the new Rakudo thread pool, his work on which was supported by Vienna.pm. In this post he outlines the problems with the previous thread pool, then describes how the new design addresses those problems.
2017.11.05 in #328
MoarVM Specializer Improvements Part 3: Optimizing Code
Another long post from Jonathan about his performance work on MoarVM. He published it as I was putting together this issue, so I haven't had a chance to read it yet. But I will, as they're always good reading.
2017.11.24 in #331
A unified and improved Supply concurrency model
Jonathan describes his recent work to improve the concurrency features provided by
2018.01.23 in #340
Grant Extension Request: Perl 6 Performance and Reliability Engineering (Jonathan Worthington)
2018.01.26 in #340
Of sisters, stacks, and CPAN
Jonathan, the current Rakudo Perl 6 Pumpking, tries to reduce the tension between the Perl 5 and Perl 6 communities. Does it work for you?
2018.02.12 in #343
Grant Extension Approved: Jonathan Worthington's Perl 6 Performance and Reliability Engineering grant
2018.04.02 in #350
JetBrains IDEA based IDE for Perl 6
2018.06.09 in #359
Faster dispatches with MoarVM specializer plugins
Part of the Performance and Reliability grant is to speed up private method calls in roles, as well as assignments in to Scalar containers. It turns out they need the same mechanism in MoarVM to work.
2018.07.20 in #365
Better usage information in the MoarVM specializer
As part of his grant from the Perl Foundation, Jonathan made some improvements to the reporting.
2018.07.21 in #365
More precise deoptimization usage tracking
Jonathan continuing his explanation.
2018.09.24 in #375
Perl 6 Development Grant (Jonathan Worthington): Report for August 2018
2018.09.28 in #375
Faster box/unbox and Int operations
2018.09.29 in #375
Eliminating unrequired guards
If you are not yet subscribed, you can do it now. Free of charge:
Just ONE e-mail each Monday. Easy to unsubscribe. No spam. Your e-mail address is safe.
This newsletter is about the Perl Programming languages.