3 ms·
> It's all method calls. Probably nitpicking, but it's actually all messages. An object might not have a method "foo", but happily respond to the "foo" message
by epidemian 12y ago
> It's all method calls.
Probably nitpicking, but it's actually all messages. An object might not have a method "foo", but happily respond to the "foo" message.
- dragonwriter 12y agoIts all method calls. Specifically, its all calls to #send, most of which get relayed to another method (either based on the message name or, if no such method exists, #method_missing.)
- throwaway0010 12y agoAnd the object responds to the "foo" message by calling a method. The difference is whether we're discussing the invocation or the response. OP's usage of method isn't incorrect in this case if it's discussing the response. It is true that all message responses (including accessors) are implemented using methods.
- epidemian 12y ago> It is true that all message responses (including accessors) are implemented using methods. An object can respond to a message even though it doesn't have a method with that name. A classic example are Rails' dynamic finders: User.methods.include?(:find_by_name) => false User.respond_to?(:find_by_name) => true
- dragonwriter 12y ago> An object can respond to a message even though it doesn't have a method with that name. Sure, by using a different method (method_missing); its still all method calls.
- throwaway0010 12y agoYes and the responses are implemented with methods. Always.