Despite its relevance in the field of MAS engineering, BDI-oriented AOP (AOP) has not yet reached the popularity of mainstream programming paradigms. The motivations of this lack of adoption have been object of debate in the MAS community, and several critical aspects have been identified ranging from paradigmatic to technological issues. In this chapter, we present JaKtA, a BDI programming framework that we developed considering such long-standing issues and addressing them by integrating recent trends in the development of mainstream programming languages and tools. JaKtA is designed to be modular and interoperable with other programming paradigms, such as object-oriented and functional programming, while maintaining the BDI declarative expressiveness through an internal DSL. We argue that our approach targeted at improving the software engineering aspects of BDI programming frameworks can lead to improvements in paradigmatic aspects, smoothening the learning curve for developers and fostering the gradual adoption of BDI programming in mainstream software development.

错误:搜索内容不能为空,请输入英文关键词
错误:关键词超出字数限制,请精简
高级检索

JaKtA: Closing the Tooling Gap for Mainstream BDI

  • Martina Baiardi,
  • Samuele Burattini,
  • Giovanni Ciatto,
  • Danilo Pianini

摘要

Despite its relevance in the field of MAS engineering, BDI-oriented AOP (AOP) has not yet reached the popularity of mainstream programming paradigms. The motivations of this lack of adoption have been object of debate in the MAS community, and several critical aspects have been identified ranging from paradigmatic to technological issues. In this chapter, we present JaKtA, a BDI programming framework that we developed considering such long-standing issues and addressing them by integrating recent trends in the development of mainstream programming languages and tools. JaKtA is designed to be modular and interoperable with other programming paradigms, such as object-oriented and functional programming, while maintaining the BDI declarative expressiveness through an internal DSL. We argue that our approach targeted at improving the software engineering aspects of BDI programming frameworks can lead to improvements in paradigmatic aspects, smoothening the learning curve for developers and fostering the gradual adoption of BDI programming in mainstream software development.