Visually, I interpret ":a" as a token unto itself, though that's
probably Ruby's fault.  That interpretation would man that the
dual-whitespace version would have to be an indirect object.

I would argue for disallowing the all-jammed-together case, lest we
run into longest-match arguments where "foobar:baz" is "foobar: baz"
but "foo:barbaz" is "foo :barbaz".  Yuck.


On 7 Oct 2007 12:22:56 -0000, Markus Laker
<[EMAIL PROTECTED]> wrote:
> If I've got this right:
>
> mangle $foo :a;    # mangle($foo, a => 1);
> mangle $foo: a;    # $foo.mangle(a());
>
> So these --
>
> mangle $foo:a;
> mangle $foo : a;
>
> are ambiguous and, as far as I can tell from the synopses, undefined.  So
> what's the rule: that indirect-object colon needs whitespace after but not
> before, and adverbial colon needs whitespace before but not after?
>
> The reason I ask is that I'm knocking up an intro to Perl 6 for C and C++
> programmers.  I expect some of Perl 6's whitespace rules to trip up people
> used to C++ (as they have me, in my clumsy attempts with Pugs), and I'd
> like to summarise all the whitespace dwimmery in one place.
>
> Many thanks,
>
> Markus
>


-- 
Mark J. Reed <[EMAIL PROTECTED]>

Reply via email to