I registered an impromptu lightning talk slot at the last moment, and delivered an English port of Takesako's highly entertaining ppencode talk. (I ported it from the original Japanese to Chinese for OSDC.tw this April, as noted in Takesako's blog.)
Although some of the humor were inevitably lost in translation, it seems to be well received -- people were certainly laughing a lot! The PDF slides and Flash slides are available, too.
TimToady++ returned from his grandpathon, and we're reviewing the design on the show-stopping assign.t and its fallout. Now the conference is over, I do intend to get the changelog and release done tomorrow, to synchronize with Parrot 0.4.5. Stay tuned...
It went really well. PDF slides are available; my crazy .xul->.opml->.key compiler worked flawlessly against all odds, and the slides I put together 90 seconds before the talk worked fine, except for a few typos subsequently discovered by #perl6. More later...
This morning Pugs was passing all its tests, except for one -- t/operators/assign.t, freshly checked in by TimToady++, tests for the new S03 ruling that makes the right-hand side of "=" parses differently, depending on whether the left hand side is a simple scalar or not.
One simple fix leads to another, and at the end of the day, Pugs is a quite different beast compared to 12 hours ago.
Some storytelling from the changelog follows, if you are interested...
So I've submitted a 45-minute talk proposal to OSCON'06 after all:
Programming the Kernel for Web 2.0
For a highly interactive web application to work well, the framework needs to manage user states, logic processes, and server resources intelligently.
This talk uses the Jifty kernel to demonstrate some interesting new concepts in this ever-expanding design space, including API reflection, client-side continuations, context switching, and mobile code.
We will also take approaches of several other web frameworks (Links, WaSH, Seaside, Rails, Catalyst, Springs, Cocoon, etc.), and express them as kernel modules on the Jifty system.
If accepted, that's going to be the most buzzword-compliant talk I've ever given. It will be a lot of fun preparing for the talk, though...
use perl5:Digest::MD5 <md5_hex>;
Also, through some evil contortions, embedded Parrot now won't crash due to invalid PGE expressions. Hopefully some day Parrot can be embedded with multiple non-interfering instances, or maybe raise a proper exception instead of forcibly calling Parrot_exit on a PIR syntax error... But for now, evil contortions would have to do.
As of r10528, the internal STM engine in the Haskell runtime is finally exposed to the userland:
my ($x, $y);
$x = $y + 1;
$y = $x + 1;
} for 1..5;
say "($x, $y)" # Guaranteed to be (9, 10)
I'd like to thank nothingmuch++ for demanding -- and sponsoring -- this wonderful language feature. See the slides and this paper and another paper for more about STM. More exciting combinators such as orElse, retry and assert coming soon!