logoalt Hacker News

9rxyesterday at 4:23 PM2 repliesview on HN

Absolutely not. It only sends a message. The receiver doesn't have to have a corresponding method and can do with that message what it will. Objective-C is a 'true' object-oriented language, like Smalltalk.


Replies

flohofwoeyesterday at 4:55 PM

In the end though most of those 'sending a message' actions are just fancy virtual method calls (e.g. an indirect jump), everything else would be much too slow:

https://www.mikeash.com/pyblog/friday-qa-2017-06-30-dissecti...

IMHO the whole 'message' and 'sending' lingo should be abandondend, the job of objc_msgSend is to look up a function pointer by certain rules. There are no 'messages' involved, and nothing is 'sent'.

show 1 reply
chuckadamsyesterday at 4:25 PM

> a 'true' OOP language, like Smalltalk.

I guess Simula, which is older than Smalltalk, doesn't get a say.

show 1 reply