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 :)