The Concurrent Language, Shared Prolog

Antonio Brogi, Paolo Ciancarini

ACM Transactions on Programming Languages and Systems 13(1), pages 99-123
January 1991

Shared Prolog is a new concurrent logic language. A Shared Prolog system is composed of a set of parallel agents that are Prolog programs extended by a guard mechanism. The programmer controls the granularity of parallelism, coordinating communication and synchronization of the agents via a centralized data structure. The communication mechanism is inherited from the blackboard model of problem solving. Intuitively, the granularity of the logic processes to be elaborated in parallel is large, while the resources shared on the blackboard can be very fined grained. An operational semantics for Shared Prolog is given in terms of a distributed model. Through an abstract notion of computation, the kinds of parallelism supported by the language, as well as properties of infinite computations, such as local deadlocks, are studied. The expressiveness of the language is shown with respect to the specification of two classes of applications: metaprogramming and blackboard systems.

Journals & Series

Created by Andrea Omicini on 12/10/2020 17:47


— authors

Antonio Brogi, Paolo Ciancarini

— status


— sort

article in journal

— publication date

January 1991

— journal

ACM Transactions on Programming Languages and Systems

— volume


— issue


— pages





— print ISSN


Partita IVA: 01131710376 — Copyright © 2008–2023 APICe@DISI – PRIVACY