Day 64: Hangman, S29, ducktyping

autrijus on 2005-04-05T16:44:56

With ingy, acme and obra leaving Taipei, YAPC::Taipei hackathon finally draws to a close, which means I get to reclaim some of the skipped sleeping hours. The hackathon was a blast, though, and I look forward to the next Pugs/Parrot hackathon at Austrian Perl Workshop, featuring Leopold Tötsch, Parrot's Pumpking (aka Patch Monster), and yours truly!

mugwump is still in Taipei, working gallantly on modeling the duck typing semantics of Perl 6's does system, with a draft mission statement, some pseudo code adapted from from Rod Adams's S29, as well as a first attempt at a UML diagram.

Speaking of the S29 draft, I think we seriously need more people volunteer to write Synopses, so the design team can create more stubs that points people to works in progress. For example, I'd like to see a S26 from the POD/Kwid/Perldoc gang...

Today Pugs kept the steady pace of growth of 48 commits, many inspired by Rod's S29 draft:

  • tobez, our new committer (also FreeBSD maintainer for perl5 and author of BSDPAN.pm), noticed a hard-coded path in readline_chomped.t, and corrected it; I subsequently fixed to use $*PROGRAM_NAME.
  • stevan implemented hangman.p6, a surprisingly addictive game using Pugs AUTHORS as the dictionary. I tweaked it a bit, and found this nice Perl 6 idiom: ($?OS eq any<MSWin32 mingw cygwin>)
  • stevan also reported several Pugs bugs on P6C. I fixed the parsing bug that forced us to write parens around last() and return(), but stuck in the parser level on how it mixes with a postfix conditional; Larry offered a explanation, which leads to some more discussion...
  • theorbtwo picked up inline Haskell support from where I was left, and begins to beat it into a usable shape.
  • iblech put his amazing energy on simplifying the TODOify/unTODO process for each release, came up with the brilliant idea of a t/force_todo file, and implemented it right away in Perl 6.
  • iblech also added a bunch of tests based on S29, then implemented sum() himself.
  • metaperl added various examples to demonstrate the argument list processing features, and exposed a bug on overly strict processing of infinite list as parameters.
  • corion added the much needed skip() form to Test.pm.
  • corion also started to write a HTTP proxy in Perl 6, as part of the test for LWP::Simple.
  • shapr implemented log, log10, as well as helped Alias to grok Haskell by pairing with him on the excellent HaskellDemo page.
  • gaal implemented the sign builtin, and fixed a mis-typed include path for config.h.

That's it for today, I think. Oh, and Chip says he'd like to join us at the YAPC::NA hackathon, so if you can't attend the Vienna one, consider joining us in Toronto. :-)