http://www.perl.com/pub/a/2004/04/16/a12.html
Warning -- 20 pages, the first of which is a table of contents.
Enjoy,
-- c
But it's all excellent good stuff. Well done Larry and Co. Now, if you
could all just hold off with the questions 'til Monday you'll make a
summary writer's life a good deal easier.
--
Biologist: What's worse than being chased by a Velociraptor?
Physicist: Being chased by an Acceloraptor
-- Larry Wall in A12
This week I've celebrated my birthday, had my jaw unwired, uncovered five
job prospects, and finally got A12.
When I do this "year in review", this week will be hard to beat.
Woo-hoo!
=Austin
It's here, it's here, it's heeeeeeeerrrrrrrreeeee!!
*Ahem*
Sorry. Will now go off and read quietly.
--Dks
Putting it off will only make things worse for you later! ;) I have many
A12 questions and comments in the queue, but alas I am busy this weekend so
you're safe for now...
-John
I started reading it last night, and ended up going to bed before I was
finished. But I just wanted to say that this:
With this dispatcher you can continue by saying "next METHOD".
is the sort of genius that makes me glad Larry's designing this
language. Well done!
--
Brent "Dax" Royal-Gordon <br...@brentdax.com>
Perl and Parrot hacker
Oceania has always been at war with Eastasia.
> chromatic wrote:
>
>> Perl.com has just made A12 available:
>
>
> I started reading it last night, and ended up going to bed before I was
> finished. But I just wanted to say that this:
>
> With this dispatcher you can continue by saying "next METHOD".
>
> is the sort of genius that makes me glad Larry's designing this
> language. Well done!
>
Yeah, remmeber from A4 that flow control stuff like "next", "leave",
"return" are semantically a form of exception throw and so are actaully
dymanically (not lexically) scoped (although the compiler is free to
optimize if the target is in the lexical scope of the construct or
vice versa).
> chromatic wrote:
>
>> Perl.com has just made A12 available:
>
>
> I started reading it last night, and ended up going to bed before I was
> finished. But I just wanted to say that this:
>
> With this dispatcher you can continue by saying "next METHOD".
>
> is the sort of genius that makes me glad Larry's designing this
> language. Well done!
>
Yeah, remmeber from A4 that flow control stuff like "next", "leave",
I kind of have a problem with this on fragility grounds.
Not so much the C<next METHOD> syntax, as the whole non-local-goto idea.
Specifically, if you have code that uses C<next> or C<last> without the loop
name, it's vulnerable to having additional control structures inserted in
the flow. (If the named approach is used, it's vulnerable to having named
entities inserted in the flow. Less vulnerable, but vulnerable.)
I'm wondering if there's some way to convert C<next METHOD> into C<next
$METHOD>, such that each loop would have a unique "identity" that could be
passed around.
This would raise the bar for erroneous invocations, and at the same time
make slightly more programmatic things possible. (Sure, C<eval "next
$meth;";> works, but at what price?)
=Austin