Title :
A logic programming infrastructure for remote execution, mobile code and agents
Author :
Tarau, Paul ; Dahl, Veronica ; De Bosschere, Koen
Author_Institution :
Moncton Univ., NB, Canada
Abstract :
We describe a set of programming patterns used for implementing a scalable infrastructure which supports remote execution mechanisms, mobile code and agents in a distributed logic programming framework. The particular focus of this paper is on the use of BinProlog´s strong metaprogramming abilities. Some advanced logic programming constructs as intuitionistic implication, high-order call/N cooperate with encapsulated socket-level constructs for maximum configurability and efficiency. We show that strong metaprogramming is not a security threat if used through a set of filtering interactors which allow source level implementation of arbitrary security policies. Mobile code is implemented in a scalable way through a set of distributed client+server pairs interconnected through a master server acting only as an address exchange broker for peer-to-peer interactors. We have thoroughly tested our programming patterns and design principles through a realistic implementation in a widely used, freely available Prolog system (http://clement.info.umoncton.ca/BinProlog) as well as with its Java peers built on top of our unification enhanced Java based Linda implementation (http://clement.info.umoncton.ca/LindaInteractor)
Keywords :
Internet; cooperative systems; logic programming; BinProlog; agents; filtering interactors; high-order call/N; intuitionistic implication; logic programming; mobile code; remote execution; security; strong metaprogramming; Filtering; IP networks; Java; Logic programming; Packet switching; Pattern matching; Peer to peer computing; Switches; System testing; Web server;
Conference_Titel :
Enabling Technologies: Infrastructure for Collaborative Enterprises, 1997. Proceedings., Sixth IEEE Workshops on
Conference_Location :
Cambridge, MA
Print_ISBN :
0-8186-7967-0
DOI :
10.1109/ENABL.1997.630799