But now, the really, really good news. The Pugs Development Team has 7 committers now -- alinbsp, bestian, hcchien, ingy, juerd, ycheng and yours truly -- and the speed of code churning has more than doubled. Wow.
Pugs also has its own site pugscode.org now, after the fashion of poniecode and parrotcode, hosted in a machine sponsored by xs4all. We also started a new IRC channel, irc.freenode.net #perl6, to coordinate daily (or, more likely, hourly) development tasks. All is welcome to join!
At the code front, lots happened today:
- Hash support has landed. There's a new caster that respect LValue context, and converts between List/Array/Hash/Scalar/Undef in a perlish fashion. Unfortunately it broke the slurpy scalar multisub in quicksort.p6; I'll fix it tomorrow.
- The ever-helpful viirya prompted me to check in the dynamic parser code that puts parseOp into the State monad -- that is, it dynamically rebuilds its unary/list prefix function table, and distinguish between their precedence levels. It also clears the path for user-defined precedence and associativities.
- "make test" on platforms with older perls should now work, thanks to clkao's prodding. The fun thing is that perl runs a
pugs -le 'print join qq[ ], @INC'before the actual test, and the solution is to simply implement join, qq and @INC in pugs.
- Also fixed is the often-complained-about ReadLine dependency. It's now lifted unless you have Term::ReadLine::Gnu installed on your system. ingy also checked in fixes to make "make clean" happy.
- tbone suggested that we change the abstract in META.yml from "Perl6 User's Golfing system" to "A Perl6 Interpreter" to reduce confusion, which I promptly did.
- ycheng made the IO operations return false on error; he also added "rename", "chdir", "sleep" and fixed up "close", "open", "mkdir" and "rmdir".
- Some small primitive and constructs like "join", "split" and "unless".
- Juerd begins committing various real-worldish tests, as well as a "Dialect" test that will exercise the macro facility in the future.
- I have begun rework the Parsec Expr parser builder, to support nested unary prefix like "!!! 1", which now works, much thanks to Juerd's testing.
So, there you have it: A team, an IRC channel, and a homepage in one day. Can't ask for more.