From: Ruby Newbee Date: 2010-01-21T11:43:56+09:00 Subject: about variable name and method name class Array def atoh hash = Hash.new if size % 2 != 0 raise "size must be odd" end 0.step(size-1,2) do |c| hash[self[c]] = self[c+1] end hash end end For "size" in the code above, we know it's a self.size method actually. But how ruby differ it's a variable or an instance method? Thanks.