I decided to make buffer purely heap-allocated, and use a garbage collector to reclaim unused buffers, similar to how I plan to handle strings. Buffers are mainly useful for interacting with external APIs that expect space to stuff data into.
In addition to the big feature items, I've caught and squished a horde of minor parser bugs, including some issues with infix operators, response maps, and reference parameters. Nothing really worth describing, but if you've noticed odd/potentially buggy behaviour in the parser in R6, chances are it's cleaned up in R7.
At the moment I'm working on the message allocator which should hopefully replace hits to the freestore from new and delete. The goal is to make message passing as fast as possible. Right now on my E6600 development box the message throughput is northwards of 55,000 messages per second, and I'm still finding ways to improve on that. It still isn't clear whether or not the lock-free allocator really adds any speed, but I should know soon when I get some more tests done.
After that... there's relatively few things left to do for R7, aside from the code review which I expect to chew up a significant amount of time. So conceivably I might actually publish R7 before the extinction of the human race.