Trans wrote:
>>Because the keys *are* symbols, and they have colons in front of them.
> 
> 
> But they're *not* symbols. They're local vars.
> 
> T.
> 

   def foo(a:, **keys)
     puts keys[:a] # the key "a" is a symbol
   end

I'd agree if the named arguments worked like positional ones, ie

   def foo(a:)
     puts a
   end

But unless I've completely misunderstood what's been suggested here, 
that's not the case.


Cheers,
Daniel