The popularity of multi-paradigm languages is on the rise, enabling developers to select the most appropriate paradigm for each task. While object-oriented and functional programming are commonly combined, other paradigms can also be hybridized. This paper introduces JaKtA, an internal Domain-Specific Language designed to support the definition of Belief-Desire-Intention agents in Kotlin. Our work represents an initial exploration into blending Agent-Oriented Programming with other prevalent paradigms, emphasizing the potential benefits of using internal Domain-Specific Languages. We demonstrate, through JaKtA, how this approach facilitates the creation of compact and expressive Belief-Desire-Intention agents that seamlessly integrate with the host language, its libraries, and tooling.

Baiardi, M., Burattini, S., Ciatto, G., Pianini, D. (2024). Blending BDI Agents with Object-Oriented and Functional Programming with JaKtA. SN COMPUTER SCIENCE, 5(8), 1-24 [10.1007/s42979-024-03244-y].

Blending BDI Agents with Object-Oriented and Functional Programming with JaKtA

Baiardi M.;Burattini S.;Ciatto G.;Pianini D.
2024

Abstract

The popularity of multi-paradigm languages is on the rise, enabling developers to select the most appropriate paradigm for each task. While object-oriented and functional programming are commonly combined, other paradigms can also be hybridized. This paper introduces JaKtA, an internal Domain-Specific Language designed to support the definition of Belief-Desire-Intention agents in Kotlin. Our work represents an initial exploration into blending Agent-Oriented Programming with other prevalent paradigms, emphasizing the potential benefits of using internal Domain-Specific Languages. We demonstrate, through JaKtA, how this approach facilitates the creation of compact and expressive Belief-Desire-Intention agents that seamlessly integrate with the host language, its libraries, and tooling.
2024
Baiardi, M., Burattini, S., Ciatto, G., Pianini, D. (2024). Blending BDI Agents with Object-Oriented and Functional Programming with JaKtA. SN COMPUTER SCIENCE, 5(8), 1-24 [10.1007/s42979-024-03244-y].
Baiardi, M.; Burattini, S.; Ciatto, G.; Pianini, D.
File in questo prodotto:
File Dimensione Formato  
s42979-024-03244-y.pdf

accesso aperto

Tipo: Versione (PDF) editoriale / Version Of Record
Licenza: Licenza per Accesso Aperto. Creative Commons Attribuzione (CCBY)
Dimensione 1.31 MB
Formato Adobe PDF
1.31 MB Adobe PDF Visualizza/Apri
paper-2024-sncs-jakta.pdf

accesso aperto

Tipo: Postprint / Author's Accepted Manuscript (AAM) - versione accettata per la pubblicazione dopo la peer-review
Licenza: Licenza per Accesso Aperto. Creative Commons Attribuzione (CCBY)
Dimensione 904.93 kB
Formato Adobe PDF
904.93 kB Adobe PDF Visualizza/Apri

I documenti in IRIS sono protetti da copyright e tutti i diritti sono riservati, salvo diversa indicazione.

Utilizza questo identificativo per citare o creare un link a questo documento: https://hdl.handle.net/11585/998116
Citazioni
  • ???jsp.display-item.citation.pmc??? ND
  • Scopus 1
  • ???jsp.display-item.citation.isi??? ND
social impact