David A. Black ha scritto:

> But this notion of "a callable" collapses things which really aren't
> the same.
> 
> If I can do this:
> 
>   a = Object.new; def a.call(x); end
>   def b(x); end
> 
>   a(10)
>   b(10)
> 
> but I can't do this:
> 
>   c = [a,b]
> 
> because one of these is an object reference and the other is a method
> identifier, then the parallel is only partial and, in my view, causes
> more problems than it solves.

but we already have something similar, CapitalNamed methods:
 >> def B(x) 'yuk' end
=> nil
 >> B 10
=> "yuk"
 >> B
NameError: uninitialized constant B

and I think this shows the same point to me, meaning that once the 
programmmer knows how it works it has quite an understandable behaviour.
Anyway, I understand your point of view, and I'd just expect matz' choice.
He already did the Right Choices enough to make me confident in future 
ones :)