> relatively few subroutines need access
> to the upscope topic.

Well, this is a central issue. What are
the real percentages going to be here?
Just how often will one type the likes
of

    -> is given($foo is topic) { ... }

rather than

    -> $foo: { ... }

?

My imagination suggests to me that in a
typical short perl 6 script, between 20%
and 50% of all sub defs would use the
upscope topic... ;>

Seriously, the functions chapter of Camel
III contains 202 functions; 36 of these
use the upscope topic.

So that gives an idea of what to expect --
although there is likely to be /more/ use
of tricks like this that support brevity
when advanced coders specifically wish to
write brief scripts.

Unless of course the very syntax that
creates /call/ brevity is itself so
verbose that it neutralizes some of its
utility in such cases, something that
would be rather ironic, don't you think?


> Moreover, because ['is given'] compromises
> the lexical scoping of the upscope topic,
> it ought to be marked very clearly

Yes.

> [keywords are clearer than punctuation for
>  marking something]

I think that's overly general.

In something that is as likely to be naturally
keyword dense as a sub or method definition, I
imagined the situation would be near reverse,
i.e. well chosen punctuation would often be a
better pick than YAK for marking something.

(Maybe colon isn't it, but I didn't pick that.)

Of course, in code written to be brief, sub
defs would tend to be less keyword, but then
again, in code written to be brief, brevity
would again suggest punctuation.

So perhaps punctuation wins in both cases;
in large projects sub defs will be keyword
dense and punctuation would better highlight
"it" and in small scripts, punctuation in
sub defs would be desirable for brevity.


--
ralph

Reply via email to