ObjVProlog-D: Distributed object-oriented programming in logic

被引:0
|
作者
Malenfant, J
Lapalme, G
Vaucher, J
机构
来源
OBJECT ORIENTED SYSTEMS | 1996年 / 3卷 / 02期
关键词
concurrent logic objects; client-server model; remote logic method calls; distributed backtracking; future logic variables;
D O I
暂无
中图分类号
TP3 [计算技术、计算机技术];
学科分类号
0812 ;
摘要
ObjVProlog-D is an experimental programming language which proposes new ways to integrate object-oriented and distributed programming concepts with Prolog to obtain the benefits of logic programming while overcoming its traditional limitations in areas such as high-level abstraction, structuring, modification of knowledge during execution and distributed computing. The basic entity in ObjVProlog-D is the concurrent logic object which combines a Horn clauses database with a process. The design of the language involves three main themes: the object-oriented model, the state change model and the distributed computing model. The object-oriented model includes not only classes and objects but also metaclasses as first-class entities; this allows metaprogramming as well as reflexive definition of the language. To model state changes, a concurrent logic object relies on dynamic clauses that can be added or deleted during the computation using a version mechanism. Finally, the distributed computing model implements large-grain AND-parallelism whereby concurrent objects delegate sub-problems to other objects (remote logic queries) which can work on them in parallel. To ensure syntactic and semantic compatibility with the usual Prolog predicate calls, synchronization of remote queries is based on the concept of a future logic variable. In contrast to most concurrent logic object proposals, ObjVProlog-D preserves Prolog's don't know non-determinism, the ability to backtrack to find all possible solutions to a query. This is achieved through a distributed backtracking protocol using asynchronous messages. Thus, ObjVProlog-D offers an original set of design choices, allowing programmers to structure a complex application as a distributed set of cooperating Prolog experts. ObjVProlog-D is implemented in Quintus Prolog and applications have been run on a network of workstations.
引用
收藏
页码:61 / 86
页数:26
相关论文
共 50 条
  • [31] OBJECT-ORIENTED PROGRAMMING WITHOUT AN OBJECT-ORIENTED LANGUAGE
    BOOCH, G
    SEIDEWITZ, E
    START, M
    FIRESMITH, D
    SIGPLAN NOTICES, 1986, 21 (11): : 508 - 508
  • [32] OBJECT-ORIENTED PROGRAMMING
    BAINES, R
    ELECTRONICS & WIRELESS WORLD, 1989, 95 (1638): : 370 - 374
  • [33] OBJECT-ORIENTED PROGRAMMING
    ANDERSON, B
    MICROPROCESSORS AND MICROSYSTEMS, 1988, 12 (08) : 433 - 442
  • [34] Object-Oriented Programming
    Barth, G.
    Welsch, C.
    IT - Information Technology, 1988, 30 (06): : 404 - 421
  • [35] OBJECT-ORIENTED PROGRAMMING
    TELLO, ER
    DR DOBBS JOURNAL, 1987, 12 (03): : 126 - &
  • [36] OBJECT-ORIENTED PROGRAMMING
    TELLO, ER
    DR DOBBS JOURNAL, 1987, 12 (11): : 130 - &
  • [37] OBJECT-ORIENTED PROGRAMMING
    POUNTAIN, D
    BYTE, 1990, 15 (02): : 257 - &
  • [38] Object-oriented programming
    Hirshfield, S
    Ege, RK
    ACM COMPUTING SURVEYS, 1996, 28 (01) : 253 - 255
  • [39] OBJECT-ORIENTED PROGRAMMING
    TENDYKE, RP
    KUNZ, JC
    IBM SYSTEMS JOURNAL, 1989, 28 (03) : 465 - 478
  • [40] OBJECT-ORIENTED PROGRAMMING
    TYUGU, EH
    PROGRAMMING AND COMPUTER SOFTWARE, 1990, 16 (06) : 233 - 241