Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

Message passing, it seems, is the basis for implementation of protocols, be it communication between objects in a hierarchy or between actors/processes in a system or nodes in a network.

It is not coincidence that message passing is the core concept in the original OO paradigm and in design of fault-tolerant distributed systems. Cells do message passing too.

I am not sure what is being copied here. Messages are just structured data (a molecule) in otherwise share-nothing architecture.



>It is not coincidence that message passing is the core concept in the original OO paradigm and in design of fault-tolerant distributed systems. Cells do message passing too.

This is not about "fault-tolerant distributed systems" though, but for "performance-first" for very CPU and memory expensive programs (video and audio processing, number crunching, etc).


Joe Armstrong thinks it is.


I doubt Joe Armstrong said anywhere that message passing can be as fast as shared memory for those kinds of applications.


He advocates "fail-fast" and "share-nothing" as fundamental principles - that's the point. With no sharing a failure of a single process affects no other, unlike threads with shared stack and state. For the same reasons Erlang is functional language with single bindings. Sharing of immutable data is OK, so message passing might be implemented using OS shared memory services.


>He advocates "fail-fast" and "share-nothing" as fundamental principles - that's the point.

He advocates those for totally different use cases.


[citation needed]




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: