Definition and implementation of a flexible communication primitive for distributed programming
Résumé
Distributed programming has to face problems due to asynchronism of underlying communication networks. If for some applications the only use of FIFO channels eliminates the undesired effets due to asynchronism, this is generally not sufficient. Total or causal order of deliveries of messages have been proposed to overcome such problems but in some cases these orders impose a too strong property that can reduce the potential parallelism of the application. This paper proposes a flexible broadcast primitive that attaches a type (ordinary or causal) to each message, these types impose constraints on messages deliveries. In that way the programmer is able to exploit the potential parallelism of this application in order to get an efficient program.