Stream-oriented logic programming
Date
1991
Authors
Lu, Chenchuan
Journal Title
Journal ISSN
Volume Title
Publisher
Abstract
Stream processing is an appealing approach to data processing due to its inherent modularity and parallelism. Stream processing computations can be naturally defined by logic programs. However, a suitable logic language to execute them is not widely available yet. The sequential logic languages (e.g., Prolog) are inadequate, the parallel logic languages (e.g., PARLOG) are expensive and inefficient. To remedy the problems, a new language called QLP-Prolog is proposed QLP-Prolog is designed on the basis of Query-level-AND-parallelism, a constrained stream parallelism which restricts parallel evaluation only at query level The QLP model not only reduces the system overhead of the parallel logic language, but also simplifies its implementation. Despite the restriction, QLP-Prolog still provides sufficient expressive power for a wide range of applications, in particular, stream processing.