Sign In/My Account | View Cart  
advertisement


Listen Print

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

Blocks and Semicolons

Piers Cawley wondered about blocks, statements and when they need terminating semicolons, and kicked off a long thread. To be honest, I'm not sure it really went anywhere, but we covered a lot of ground. The confusion arises, I think, because the design of Perl6 has moved (rather substantially in places) from the design described in some of the earlier apocalypses and exegeses. Questions like 'is when a statement, or just a clever function?', 'has Larry changed his mind about no special cases for blocks?' and others would appear to be standing in need of some definitive answers. These will, of course be forthcoming, if only in Perl6's final grammar, but we're an impatient lot.

http://groups.google.com/groups

XS in Perl 6

Aaron Sherman had a few thoughts about XS (well, whatever is going to replace it in Perl 6 and Parrot anyway) which he shared with the list. Essentially his proposals covered ways in which modules that are partially implemented in other languages could be cleanly declared and prototyped using Perl syntax rather than the current method involving XS, which looks like no other language on ghod's green earth. Brent Dax proposed a slightly different syntax, using a returns property (sub foo is returns(...)? Don't you love grammar?). The thread got rather long as Brent and Aaron discussed things back and forth, with Nicholas Clark interjecting at one point to draw the participants attention to the fact that they seemed to be on the verge of reinventing Inline::C. Tim Bunch suggested that we 'should be thinking about the forward declaration syntax and semantics for using existing libraries at this stage. [He suspects] that it'll then become clear how to add extra code in a simple and natural way.'

Tim also pitched in with a long quote from Larry about his goals for the Perl 6 extension mechanism.

David Whipp wondered whether we shouldn't actually be thinking about Parrot's XS replacement rather than Perl 6's. Aaron thought not, because even when parrot's extension model was fully specced out, we still need to worry about how that interacts with Perl at a language level. Dan Sugalski disagreed with Aaron, pointing out that Perl 6 XS isn't due to be dealt with until Apocalypse 21. Aaron wondered whether this really meant we'd be waiting for '16 more Apocalypses before we write code that allows chdir() to call the C library function?' Dan thought Aaron was worrying unduly and pointed out that chdir is, or will be, a Parrot opcode. Aaron responded to this by stepping back and defining some useful terms and stated his current position in those terms. And then the week ended.

This one could run and run. Tune in next week for the exciting continuation. (Ooh, we haven't done continuations recently have we?)

http://groups.google.com/groups

http://groups.google.com/groups

http://groups.google.com/groups

http://groups.google.com/groups

Passing Arguments

In a subthread of the 'blocks and semicolons' thread, Aaron Sherman wondered about passing arguments. Aaron listed five different forms and wondered about how one would mix up the different styles. Luke Palmer and Brent Dax both wondered what made one of his special cases a special case. Again, it looks like the whole area of prototypes could use some cleaning up (but then we're currently working on clues from other design documents; hopefully the upcoming Apocalypse 6 will clear up many of these issues).

http://groups.google.com/groups

In Brief

Steve Fink committed his IntList patch, and Josef Höök queried the creation of an intlist.c file in the Parrot core, as his matrix patch had been rejected for doing something similar. Nobody has responded to this yet.

Ramesh Ananthakrishnan wondered whether compiling C down to Parrot would be a useful thing to do, as a way of magically porting useful stuff that was already written in C. Aaron Sherman thought that it wouldn't be useful as a 'magic porting' tool, as that would be better done by linking to existing C libraries, and that for small fragments, a manual conversion would probably be better anyway.

Ramesh (or should that be Ananthakrishnan) also wondered whether it is possible to write networking code in Parrot. Answer: Not yet, but a Sockets extension is probably get written at some point.

Andy Dougherty patched the build's link order to take traditional, order dependent, linkers into account.

Jerome Quelin fixed Befunge (though, with a language like that, how anyone could tell it's broken is a mystery) to use the new chr opcode.

Dan Sugalski turned 35 on the 12th. I turned 35 on the 15th. Did I miss anyone else's birthday?

Leopold Toetsch patched Parrot_vsprintf_s and after prompting supplied a test that failed without the patch in place. (Remember boys and girls, if you're offering a patch that fixes a bug, make sure you also supply a test that shows up the bug.)

Jeff Forr wanted to declare next (this) week to be a week of bug hunting, but Nicholas Clark pointed out that this clashed with YAPC::Europe and maybe it was better to make the week after a bug hunt. Jeff agreed.

Pages: 1, 2, 3, 4, 5

Next Pagearrow