Messengers are autonomous objects, each capable of navigating through the u
nderlying network and performing various tasks at each node. Messengers app
lications are written using navigational commands rather than the send/rece
ive primitives of conventional message-passing approaches. In this paper we
contrast the two programming styles. From a software engineering viewpoint
, the navigational style generally results in a smaller semantic gap betwee
n abstract algorithm descriptions and their actual implementations, which m
akes programs easier to construct, understand, and maintain. In terms of pe
rformance, Messengers programs are highly competitive with message-passing.
We demonstrate these advantages using two concrete applications programmed
using Messengers and PVM. (C) 1999 Academic Press.