Delta Prolog: A distributed backtracking extension with events
We present Delta Prolog, a distributed logic programming language that extends Prolog to include AND-parallelism (in a single processor or across a network of processors), interprocess communication via message passing with two-way pattern matching, interprocess synchronization with simultaneous message passing, and distributed backtracking among a family of processes. The extension is achieved, at the language level, by just two additional types of goals — events and splits. The implementation is written part in Prolog and part in C, with a small number of core primitives, to help portability. It is still experimental and expected to evolve. In this work we present the language's distinguishing features, describe its semantics, exhibit programs and analyse their behaviour, examine the implementation, and mention conclusions, advantages of the approach and the next developments.
KeywordsLogic Programming Operational Semantic Event Goal Interprocess Communication Interrupt Handling
Unable to display preview. Download preview PDF.
- [BRU84]Bruynooghe, M.; Pereira L. M., “Deduction revision through intelligent backtracking” in “Implementations of Prolog” (Campbell ed.) Ellis Horwood 1984Google Scholar
- [HOARE85]Hoare, C.A.R. “Communicating sequential processes” Prentice-Hall, 1985Google Scholar
- [JC,JNA84]Cunha, J. C.; Aparício, J. N., “Delta Prolog implementation: progress report no.1”, Universidade Nova de Lisboa, December 1984Google Scholar
- [JC,JNA85]Cunha, J. C.; Aparício, J. N., “Delta Prolog implementation: progress report no.2”, Universidade Nova de Lisboa, July 1985Google Scholar
- [LM83]Monteiro, L. “A proposal for distributed programming in logic”, in “Implementations of Prolog” (Campbell ed.) Ellis Horwood 1984Google Scholar
- [LMP82]Pereira M. L.; Porto, A. “Selective Backtracking” in “Logic Programming” (Clark, Tarnlund eds.) Academic Press 1982Google Scholar
- [LMP84]Pereira, L. M.; Nasr, R. “Delta Prolog: a distributed logic programming language”, in “Proceedings of FCGS”, Tokyo, November 1984.Google Scholar