3 ms·
You can think of a pure-data object, such as a message, as a special kind of actor whose protocol includes messages to extract the parts. It gets tricky when it
by abecedarius 10y ago
You can think of a pure-data object, such as a message, as a special kind of actor whose protocol includes messages to extract the parts. It gets tricky when it comes to comparisons: you want e.g. a boolean to be able to say "yes, I'm equal to this boolean b you sent me" but you also want to be able to send a transparent forwarder b' that wraps a "real" boolean b. I'm not sure how the different actor languages dealt with these issues.
- tonyg 10y agoExactly. Data is necessary to make control flow decisions; the purely behavioural approach suffers infinite regress without some form of concrete data. I suspect that this problem was one of the reasons later actor languages came to include some kind of data; in the case of Erlang, messages are the data, compared structurally; in E, object identities can be compared without sending messages to the objects.