Paul Brannan <paul / atdesk.com> writes:

> The problem with the latter proposal is that it would either be
> ambiguous or make whitespace more significant than it already is, since:
> 
>   func(arg1 :xx, arg2 :yy)
> 
> is the same as:
> 
>   func(arg1(:xx), arg2(:yy))

It's OK for whitespace to be significant. For example, xx? is a method
name, while xx ? is the start of a conditional expression. :a is a
symbol, : a is the end of a conditional expression.

If we used

   name: val  othername: val

for keyword arguments, the colon would have to appear at the end of
the name.

(And I have to admit I still have a soft spot for this, even though I
know Matz doesn't like it... :)


Dave