Go! — A Multi-Paradigm Programming Language for Implementing Multi-Threaded Agents

被引:0
|
作者
K.L. Clark
F.G. McCabe
机构
[1] Imperial College,Department of Computing
[2] Fujistu Labs of America,undefined
关键词
agent programming; multi-paradigm programming; threads;
D O I
暂无
中图分类号
学科分类号
摘要
Go! is a multi-paradigm programming language that is oriented to the needs of programming secure, production quality, agent based applications. It is multi-threaded, strongly typed and higher order (in the functional programming sense). It has relation, function and action procedure definitions. Threads execute action procedures, calling functions and querying relations as need be. Threads in different agents communicate and coordinate using asynchronous messages. Threads within the same agent can also use shared dynamic relations acting as Linda-style tuple stores. In this paper we introduce the essential features of Go!. We then illustrate them by programming a simple multi-agent application comprising hybrid reactive/deliberative agents interacting in a simulated ballroom. The dancer agents negotiate to enter into joint commitments to dance a particular dance (e.g., polka) they both desire. When the dance is announced, they dance together. The agents' reactive and deliberative components are concurrently executing threads which communicate and coordinate using belief, desire and intention memory stores. We believe such a multi-threaded agent architecture represents a powerful and natural style of agent implementation, for which Go! is well suited.
引用
收藏
页码:171 / 206
页数:35
相关论文
共 50 条
  • [1] Go! A multi-paradigm programming language for implementing multi-threaded agents
    Clark, KL
    McCabe, G
    [J]. ANNALS OF MATHEMATICS AND ARTIFICIAL INTELLIGENCE, 2004, 41 (2-4) : 171 - 206
  • [2] Go! for multi-threaded deliberative agents
    Clark, KL
    McCabe, FG
    [J]. DECLARATIVE AGENT LANGUAGES AND TECHNOLOGIES, 2004, 2990 : 54 - 75
  • [3] A Multi-Paradigm Programming Language for Education
    Duemmel, Nikita
    Westfechtel, Bernhard
    Ehmann, Matthias
    [J]. PROCEEDINGS OF THE 5TH EUROPEAN CONFERENCE ON SOFTWARE ENGINEERING EDUCATION, ECSEE 2023, 2023, : 236 - 245
  • [4] Distributed programming in a multi-paradigm declarative language
    Hanus, M
    [J]. PRINCIPLES AND PRACTICE OF DECLARATIVE PROGRAMMING, PROCEEDINGS, 1999, 1702 : 188 - 205
  • [5] A multi-threaded asynchronous language
    Paulino, H
    Marques, P
    Lopes, L
    Vasconcelos, V
    Silva, F
    [J]. PARALLEL COMPUTING TECHNOLOGIES, PROCEEDINGS, 2003, 2763 : 316 - 323
  • [6] Multi-paradigm Programming in Maude
    Escobar, Santiago
    [J]. REWRITING LOGIC AND ITS APPLICATIONS, WRLA 2018, 2018, 11152 : 26 - 44
  • [7] Multi-paradigm declarative programming
    Hanus, M
    [J]. LOGIC PROGRAMMING - PROCEEDINGS OF THE 1997 INTERNATIONAL SYMPOSIUM, 1997, : 43 - 45
  • [8] mpC: A multi-paradigm programming language for massively parallel computers
    Lastovetsky, AL
    [J]. ACM SIGPLAN NOTICES, 1996, 31 (02) : 13 - 20
  • [9] Agents as multi-threaded logical objects
    Clark, K
    Robinson, PJ
    [J]. COMPUTATIONAL LOGIC: LOGIC PROGRAMMING AND BEYOND, PT I: ESSAYS IN HONOUR OF ROBERT A KOWALSKI, 2002, 2407 : 33 - 65
  • [10] Agents as multi-threaded logical objects
    Clark, Keith
    Robinson, Peter J.
    [J]. 2002, Springer Verlag (2407):