tuProlog: A Light-Weight Prolog for Internet Applications and Infrastructures
Intelligence and interaction are two key -issues in the engineering of todaycomp lex systems, like Internet-based ones. To make logic languages accomplish their vocation of sound enabling technologies for intelligent components, we first need their implementations to strictly meet some engineering properties such as deployability, configurability, and scalability. Then, we should provide them with a wide range of interaction capabilities, according to standards and common practices. This would make logic-based systems also viable tools to build deployable, configurable, dynamic, and possibly intelligent infrastructures.
In this paper, we present tuProlog, a light-weight Java-based system allowing configurable and scalable Prolog components to be built and integrated into standard Internet applications according to a multiplicityof different interaction patterns, like JavaBeans, RMI, CORBA, and TCP/IP. Even more, tuProlog offers basic coordination capabilities in terms of logic tuple spaces, which allow complex Internet-based architectures to be designed and governed. This makes it possible to use tuProlog as the core enabling technologyf or Internet infrastructures - as in the case of the TuCSoN and LuCe infrastructures for the coordination of Internet-based multi-agent systems.
Unable to display preview. Download preview PDF.
- P. Ciancarini, A. Omicini, and F. Zambonelli. Coordination technologies for Internet agents. Nordic Journal of Computing, 6(3):215–240, Fall 1999.Google Scholar
- CKI Prolog. http://www.students.cs.uu.nl/people/smotterl/prolog/.
- E. Denti, A._Natali, and A. Omicini. On the expressive power of a language for programming coordination media. In Proceedings ACM 1998 Symposium on Applied Computing (SAC’98), pages 169–177, Atlanta (GA), 1998. ACM. Track on Coordination Models, Languages and Applications.Google Scholar
- E. Denti and A. Omicini. Engineering multi-agent systems in LuCe. In Proceedings ICLP’99 International Workshop on Multi-Agent Systems in Logic Programming (MAS’99), Las Cruces (NM), 1999.Google Scholar
- E. Denti, A. Omicini, and V. Toschi. The Lu⊂e coordination technology for MAS design and development on the Internet. In A. Porto and G.-C. Roman, editors, Coordination Languages and Models (COORDINATION 2000), volume 1906 of LNCS, pages 305–310. Springer-Verlag, 2000.Google Scholar
- E. W. Dijkstra. Co-operating sequential processes. In Programming Languages. Academic Press, London, 1965.Google Scholar
- Jinni. http://www.binnetcorp.com/Jinni/.
- MINERVA. http://www.ifcomputer.com/MINERVA/.
- A. Omicini and E. Denti. From tuple spaces to tuple centres. Science of Computer Programming, 2001.Google Scholar
- D. Rossi, G. Cabri, and E. Denti. Tuple-based technologies for coordination. In A. Omicini, F. Zambonelli, M. Klusch, and R. Tolksdorf, editors, Coordination of Internet Agents: Models, Technologies and Applications, chapter 4, pages 83–109. Springer-Verlag, Jan. 2001.Google Scholar
- R. Tolksdorf. Languages for the Java Virtual Machine. http://grunge.cs.tu-berlin.de/∼tolk/vmlanguages.html.
- M. Weiser. Hot topic: Ubiquitous computing. IEEE Computer, 26(10):71–72, Oct. 1993.Google Scholar
- W-Prolog. http://www.cs.mu.oz.au/~winikoff/wp/.