This paper presents some issues related to the remote execution, distribution and communication in GUIDE, an object-oriented programming language and system which supports the construction and execution of distributed applications. At the programmer level, the distribution is hidden, i.e. objects are accessed through system-wide references and the execution may take place at any node in the system. The remote execution in GUIDE is based on job and activity diffusion, and remote object invocation. These concepts are refinements of traditional concepts used for designing distributed systems: client-server model and remote procedure call. They result in a symmetric system architecture offering a high level of transparency to the programmer.