Sign In/My Account | View Cart  
advertisement


Listen Print

This week on Perl 6 (8/26 - 9/1, 2002)
by Piers Cawley | Pages: 1, 2, 3

The news from London

On Thursday Damian managed to deliver his Perl 6 prospectus talk in about 3.5 hours. Okay, it sounds like a long time, but Damian told us that, on average, the talk runs to 5 hours. The 'one question' rule introduced by London.pm seems to have worked well. As predicted a whole load of lights went on over peoples heads as they started to 'get' how the whole thing hung together.

Anyway, the one question rule led to a bunch of questions about Perl 6 cropping up on the London.pm mailing list that haven't (yet) been cross posted to perl6-language. One interesting question concerned what happens when bare/if/while/do/when/etc blocks have return in them. Damian answered that they throw a 'return' control exception, which the control structure catches and re-throws. Piers wondered how you'd go about writing your own looping construct and made a couple of proposals about the treatment of control exceptions.

Quote of the London.pm threads: 'yImoj Perl javDIch!' which, as everyone knows, is the Klingon for 'Be Perl6. Now!'.

http://makeashorterlink.com/

http://makeashorterlink.com/

Call for assistance

Next week is the Zurich Perl 6 mini conference, and I won't be there. Soon after that is YAPC::Europe 2002, and I won't be there either. This week, Damian is in Belfast and will be talking to Belfast.pm about stuff, guess what, I'm not there either. If anyone would like to send me some Perl 6 related reports for the summary from any of these events I would be enormously grateful. Thanks in advance.

Squashing a myth

You may have come across the 'Damian Conway is looking for graduate students' meme. I know I have, and I repeated it at one of Damian's talks in London. Guess what, it's not true (as I should have realised). Damian is no longer associated with any institute of higher learning and is not looking for graduate students. Kindly readjust your memeplexes.

In Brief

Pete Sergeant pointed us all at some work he'd done toward building an 'operations dictionary' for Parrot. Available at http://grou.ch/parrot/index.cgi.

Over the course of a surprisingly long thread, Steve Lambert, Markus Laire and Leopold Toetsch and a few of the usual suspects got IMCC and Perl6 compiling properly with Windows.

Bryan C. Warnock offered a large patch to parrot's glossary.pod; a document worth reading. Bryan also PODified byteorder.dev so it would show up correctly on http://www.parrotcode.org/docs/. Bryan also added POD title blocks to a pile of PODs. Kudos to the docmonster.

Daniel Grunblatt added conditional breakpoints and watchpoints to the Parrot Debugger. Steve Fink also waved a magic wand over the debugger and fixed up a bunch of problems. Well done chaps.

Andy Dougherty wondered about how up to date MANIFEST is. There were 497 files listed in MANIFEST, but a fresh CVS checkout runs to 2215 files. Daniel Grunblatt thinks he's added all the important files to MANIFEST.

Sean O'Rourke made some big changes to IMCC; newlines within statements are no longer allowed, and there's been some 'significant changes to register allocation and spilling.'

Bryan C. Warnock wondered about the file permissioning inconsistency in the parrot source tree. Andy Dougherty pointed out that it wasn't (quite) as inconsistent as it looked; build scripts should be left without execute bits so that makefile authors would use the more portable $(PERL) script.pl, which makes no assumptions about the whereabouts of perl.

Peter Gibbs offered a huge patch, merging his 'African Grey' parrot tweaks with the CVS parrot. It's not been applied in CVS, but http://makeashorterlink.com/ has the details.

Jason Gloudon wondered about temporary PMCs used in opcodes like < ADD Px, Py, Pz >, and wondered what set_pmc should do in the simple case. Sean O'Rourke pointed out that often one wouldn't need to create transient PMCs because one could use the specialist string and number registers to hold the temporaries. Sean voted for 'morph' in the simple set_pmc case.

Jonathan Sillito contributed a patch allowing for hierarchical lookup of lexical variables in scratchpads, and which makes subroutines into real closures (by virtue of the hierarchical lookup up of lexical variables...). Warnock's Dilemma applies...

Andy Dougherty did some cleaning up of the build process, removing lint and cruft from the Makefiles and Configure.pl. Hmmm... I wonder how far we are from our goal of 'compile a miniparrot, use that to execute the more advanced config script, and then compile the full parrot', and removing the dependency on Perl to build parrot...

Now that we have ICU in the repository Angel Faus wondered how we should deal with differently encoded strings. No answers yet.

Andy Dougherty wondered if the time had come to make IMCC build with plain old yacc and lex instead of depending on bison and flex. Leopold Toetsch reckoned that that would be a good idea and asked Andy for his patches.

Leopold found a bug in mul, div, mod, sub, concat when operating on PMCs. So he fixed it. I'm not sure if the patch has been applied.

Jürgen Bömmels got fed up with MANIFEST not being accurate. So he wrote an automated test which compares the MANIFEST with CVS/Entries and complains if they don't match. I don't know if it's been checked in yet, but when it does, let's hope the committer remembers to update the manifest.

Steve Fink has a patch which stops Configure.pl touching files unless they've actually changed, and wondered if it would be of any use to people not actually working on Configure. Nicholas Clark took the opportunity to point us at http://ccache.samba.org/.

Steve Fink also submitted a flurry of clean up patches, many of which look like they'll get applied once 0.0.8 has been released.

Dan noted that Hashes are an order of magnitude slower to GC than, say PerlStrings, and two orders of magnitude slower than PerlInts. Which isn't good. Dan wondered if there might be a way to get less GC overhead. Steve Fink offered a few suggestions.

':/::/:::/<commit> makes backtrack fail current atom/group/rule/match.' -- Markus Laire summarizes the various backtracking assertions.

Who's who in Perl 6

Who are you?
Miko (pronounced "Mike-Oh") O'Sullivan, Father of Melody, Husband of Starflower, Follower of Jesus, Author of The Idocs Guide to HTML
What do you do for/with Perl 6?
Participate in perl6-language, generally by suggesting small features that I think would make life a lot easier for programmers.
Where are you coming from?
I come from the perspective that a) I want things to just work without a lot of startup effort on my part b) I believe that things can in fact actually do that c) Perl does d) Perl can do so even more e) I'm pretty normal in these feelings. Oh, also Blacksburg, VA, USA.
When do you think Perl 6 will be released?
Put me down for June 6, 2003, 1:37:03 am EST.
Why are you doing this?
I'm sort of like a Lab (i.e. the dog) that instinctively jumps into a lake: I just must do it.
You have 5 words. Describe yourself.
Impatient.
Do you have anything to declare?
I declare a lot of public static constants.

Acknowledgements

Thanks to Gill for putting up with me last night while I sat and pretty much ignored everything as I worked on this summary. For some reason, perl6-language threads are much harder to summarize well; I always take longer to write a summary when that list is busy.

As usual, if you liked this summary, please send money to the Perl Foundation at http://donate.perl-foundation.org/ to support the ongoing development of Perl.

This week's summary was funded by the O'Reilly Network, who now pay the publication fee for the summaries directly to the Perl Foundation. So, a big thank you to them.