Applying Prolog to Develop Distributed Systems

Nuno P. Lopes, Juan A. Navarro, Andrey Rybalchenko, Atul Singh

 

Abstract:

Development of distributed systems is a difficult task. Declarative programming techniques hold a promising potential for effectively supporting programmer in this challenge. While Datalog-based languages have been actively explored for programming distributed systems, Prolog received relatively little attention in this application area so far. In this paper we present a Prolog-based programming system, called DAHL, for the declarative development of distributed systems. DAHL extends Prolog with an event-driven control mechanism and built-in networking procedures. Our experimental evaluation using a distributed hash-table data structure, a protocol for achieving Byzantine fault tolerance, and a distributed software model checker - all implemented in DAHL - indicates the viability of the approach.

 

Published:

N. P. Lopes, J. A. Navarro, A. Rybalchenko, A. Singh. Applying Prolog to Develop Distributed Systems. Theory and Practice of Logic Programming, 26th Int'l. Conference on Logic Programming (ICLP'10) Special Issue, 10(4-6):691-707, July 2010.

 

Download:

 

Bibtex:

@article{dahl-iclp10,
  title =	{Applying Prolog to Develop Distributed Systems},
  author =	{Nuno P. Lopes and Juan A. Navarro and Andrey Rybalchenko and Atul Singh},
  journal =	{Theory and Practice of Logic Programming, 26th Int'l. Conference on Logic Programming (ICLP'10) Special Issue},
  volume =	{10},
  number =	{4--6},
  publisher =	{Cambridge University Press},
  pages =	{691--707},
  doi =		{10.1017/S1471068410000360},
  month =	jul,
  year =	2010
}

 

Copyright notice:

Original publication © 2010 Cambridge University Press

 

<-- Return