Getting locks and sharing: was RE: Getting concurrency

David Hopwood <>
Tue Jun 21 18:00:19 CEST 2005

Ulf Wiger (AL/EAB) wrote:
> I think the idea of discarding messages might be a way forward,
> but think that one must go further than to just randomly 
> discard them. It is very useful to know for sure that if 
> s1 and s2 have been sent from P1 to P2, then if s2 arrives,
> s1 is guaranteed to have arrived before it. The spec doesn't
> state this, but it's what I think it should state.

I agree. Note that E, which is also a distributed asynchronous
message passing system, does make this guarantee. If a message
cannot be delivered to a given reference (~= Erlang port), the
reference becomes "broken", and will receive no more messages.
References that are not broken eventually receive all the
messages sent to them, in causal order (see
However, it is also possible to create "sturdy refs" which survive
failure of vats (~= Erlang nodes).

David Hopwood <>

More information about the erlang-questions mailing list