Model transformations from the SARL agent-oriented programming language to an object-oriented programming language. (7th April 2020) - Galland, Stéphane; Mualla, Yazan; Tchappi, Igor Haman; Zhao, Hui; Rodriguez, Sebastian; Najjar, Amro; Gaud, Nicolas
SARL is a general-purpose agent-oriented programming language. This language aims at providing the fundamental abstractions for dealing with concurrency, distribution, interaction, decentralisation, reactivity, autonomy and dynamic reconfiguration that are usually considered essential for implementing agent-based applications. Every programming language specifies an execution model. In the case of SARL, this execution model is defined based on the object-oriented paradigm, i.e., the run-time environment is written in Java. Accordingly, and by default, the SARL programs are transformed into their equivalent object-oriented programs written in Java. The goal of this paper is twofold. Firstly, to explain the mapping between the agent-oriented paradigm and the object-oriented paradigm. Secondly, to define transformations from the SARL constructs to the Java constructs. We advocate that these goals enable the SARL developers to understand the SARL statements, and the mapping to the equivalent executable entities.