Abstract
Multiway dynamic mergers with constant delay are an essential component of a parallel logic programming language. Previous attempts to defined efficient mergers have required complex optimising compilers and run-time support. This paper proposes a simple technique to implement mergers efficiently. The technique requires an additional data type and the definition of an operation on it. The operation allows multiple processes to access a stream without incurring the cost of searching for the end of stream. It is specified in Concurrent Prolog and is used to define multiple assignment variables using a monitor. The technique forms the basis for stream merging in Logix, a practical programming environment written in Flat Concurrent Prolog.
Original language | English |
---|---|
Pages (from-to) | 211-216 |
Number of pages | 6 |
Journal | New Generation Computing |
Volume | 4 |
Issue number | 2 |
DOIs | |
State | Published - Jun 1986 |
Externally published | Yes |
Keywords
- Concurrent Prolog
- Copy Avoidance
- Stream Merging