Day 185/186 (r6197): Inferencing and named returns.

autrijus on 2005-08-11T17:40:38

Work got busy in the past two days, so I didn't do much on the Pugs front, except fixing a couple bugs (eg. lower-cased type names are now legal -- reported by jql). I also switched the new PIL runcore to use a faster Str storage. So we can't have infinite strings now, but fortunately that wasn't in the spec anyway.

The long discussion on p6l about type inferencing continued. I'm glad that Larry seems to like my named return idea:

sub init_dbh (Str $dsn --> DBI $dbh) {
    $dbh .= connect($dsn);
    $dbh.do('some init code');
    say 'I return $dbh anyway!';
}
This is suspiciously like Fortran's out variables, but I think it improves readability nonetheless.

fglock is churning out an amazing amount of Perl 6 code, covering Arrays, Lists and some of the newly-promoted Sets. He also translated modules and tests to Perl 5, reportedly with help from a five-line regex. Check out the TODO sections for more things to come...

After recovering the JavaScript runtime from the continuation-passing rearchitecting, iblech hacked the current PIL generator to handle multisubs. He also skipped some IO tests when $*OS eq 'browser'. I guess $*OS may become emacs some day...

geoffb, in his a helpful documentation gnome hat, updated the STATUS document and the source tree map.

Aankhen changed require to use in the HTTP::* family of modules, and changed &coerce:<as> from method to sub.

vkon revamped quickref/var to cover more magical variables in a more organized fashion.

Stevan eliminated the incestuous relationship between the OO metamodel in Perl 5 and Perl 5's own package system, and added ASCII arts to the 10k ft view. I look forward to Visiolize them during the weekend.

dudley carried on Stevan's preliminary work on >org.perl6.metamodel, the Java port of meatmodel -- I mean metamodel.

putter fixed a post-6.2.9 bug; Pugs was sometimes accidentally handing perl6 rules to PCRE, causing strange errors.

I think that's it for today... Fortunately the weekend begins tomorrow. :)