Day 117: evalbot; Maypole and Catalyst for Perl 6.

autrijus on 2005-05-29T01:17:56

I'm surprised and delighted to see lathos porting his Maypole framework to Perl 6:

 I'm actually *really* enjoying porting Maypole to Perl 6. SO much cleaner.

I relayed this news to #catalyst, only to discover that sri has already beginning a Perl 6 of Catalyst. I happily sent commitership invitation mails to both of them; it is an honour to have two such illustrious hackers on board.

Another big news today is iblech's evalbot.p6, an IRC bot providing ?eval command for all #perl6 folks to try out Perl 6 code with. To protect against system(), a safe mode is implemented to disable all IO primitives, when Pugs is started with a true value in the PUGS_SAFEMODE environment variable. The evalbot has already proven to be a very useful quick-checking tool during language discussions; iblech++ for getting it written!

iblech also added the $?PUGS_VERSION special variable to represent the revision number of Pugs.

eric256 and his wizard.p6 continued to drive more development:

  • .attr = 1 is no longer parsed as $_.attr(=1).
  • use lib '/path'; now works correctly by calling ::lib.import('/path').
  • when .does(Foo), when $_.does(Foo) and when Foo are all implemented now.

Some more work on the Pugs/Perl5 embedding front:

  • Perl 5 can now invoke Pugs objects as well as closures.
  • Chained method application like DBI.connect($x).do($y) now works properly.
  • Tweaks on C compiler flags handling to make it compile on even more platforms -- as long as GHC and Perl was built with the same C compiler.

broquaint wondered why $str.split(//) was parsed as split($str, //). I fixed that specific case, but $x.split($y) still does not mean split($y, $x) yet; broquaint added various tests for them. Also at broquaint's request, iblech implemented &getc.

iblech added some information about using the Compose key under X11 to enter special characters. I followed the instruction with the Menu key, but it had no effect at all. Strange...

Aankhen ported HTTP::Headers::Util from Perl 5, along with its unit tests.

SamB started working on Pugs.Compile.Pugs to produce more readable output code.

hcchien, our Taipei.pm leader and one the first committers, returned to Pugs today and implemented a input method driver for lukhnos's OpenVanilla framework. He remarked that Pugs is not yet fast enough for a real-time imput method. This will likely change next week when I started working with Leo...

There have been a flurry of commits on util/perl6.vim syntax file from iblech, ninereasons, scw and me. With the improved highlighting, it's now much easier to edit OO modules in Perl 6.

That's it for today. See you tomorrow!