This paper proposes programming constructs to improve the practical application of existing BDI-based agent-oriented programming languages that have formal semantics. The proposed programming constructs include operations such as testing, adopting and dropping declarative goals, different execution modes for plans, repairing plans when their execution fail, event and exception handling mechanisms, and interfaces to existing imperative and declarative programming languages. Categories and Subject Descriptors D.3.3 [Programming Languages]: Language Constructs and FeaAbstract data types, Control structures Keywords Agent Programming Language, Cognitive Agents
Mehdi Dastani, Dirk Hobo, John-Jules Ch. Meyer