IMAGO Prolog and its compilation

dc.contributor.advisorLi, Xining
dc.contributor.authorLiang, Hua of Computing and Information Scienceen_US of Guelphen_US of Scienceen_US
dc.description.abstractMost of current Mobile Agent systems are based on scripting or interpreted programming languages that offer portable virtual machines for executing agent code. Mobile agents are able to access many different resources on the Internet, and retrieve, analyze, manipulate, and integrate heterogeneous data and information on demand. These complex behaviors of agents need more expressive power and intelligence provided by their programming language. Naturally, Prolog is one of the best programming languages for the intelligent mobile agent paradigm. IMAGO Prolog [1] is a simplified Prolog with an extended Application Programming Interface (API) to support mobile agent applications. The implementation of IMAGO Prolog is based on a Multi-threading Logic Virtual Machine (MLVM) [2]. The MLVM adopts a novel memory management approach, such as the single stack scheme and Chronological Garbage Collection (CGC) [3]. I designed and implemented the IMAGO Prolog compiler, which translates IMAGO Prolog programs into MLVM bytecodes. The IMAGO Prolog compiler consists of a preprocessor, lexical analyzer, syntax analyzer, code optimizer, code generator and assembler.en_US
dc.publisherUniversity of Guelphen_US
dc.rights.licenseAll items in the Atrium are protected by copyright with all rights reserved unless otherwise indicated.
dc.subjectMobile Agent systemsen_US
dc.subjectprogramming languageen_US
dc.subjectintelligent mobile agent paradigmen_US
dc.subjectIMAGO Prolog [1]en_US
dc.subjectApplication Programming Interfaceen_US
dc.subjectmobile agent applicationsen_US
dc.subjectMulti-threading Logic Virtual Machineen_US
dc.subjectmemory managementen_US
dc.titleIMAGO Prolog and its compilationen_US


Original bundle
Now showing 1 - 1 of 1
Thumbnail Image
3.56 MB
Adobe Portable Document Format