A polymorphic type system for PROLOG.
Artificial Intelligence
Communications of the ACM
Proceedings of the 8th annual ACM symposium on User interface and software technology
Blackboard-based extensions in Prolog
Software—Practice & Experience
Logic programming with the World-Wide Web
Proceedings of the the seventh ACM conference on Hypertext
Backtrackable State with Linear Affine Implication and Assumption Grammars
ASIAN '96 Proceedings of the Second Asian Computing Science Conference on Concurrency and Parallelism, Programming, Networking, and Security
LogiMOO: a multi-user virtual world with agents and natural language programming
CHI EA '97 CHI '97 Extended Abstracts on Human Factors in Computing Systems
High-level networking with mobile code and first order AND-continuations
Theory and Practice of Logic Programming
The world wide web as a place for agents
Artificial intelligence today
Towards a logic programming infrastructure for internet programming
Artificial intelligence today
Hi-index | 0.00 |
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).