This paper describes a formal model for parallel programming languages, based on macroscopical coarse grained parallelism and shared blackboard communication. Examples of such languages are Multi-Prolog [3, 4], and Shared Prolog [1]. Both languages support a blackboard which acts as a common communication medium between processes. The blackboard communication is explicit, by means of dedicated communication primitives. The parallelism exploited is not based on the properties of the logic (and-, or-parallelism), but on the visible parallelism in the application. A program consists of a number of communicating sequential (Prolog) processes [2].