A target agnostic translator for Agents Assembly. The translator can be tested live on Agents Assembly website. It is a part of the Agents Assembly ecosystem. Other applications are:
- Local Interface - GUI for simulation definition, management, and analysis.
- Simulation Run Environment - environment for running scalable agent-based simulations.
- Communication Server - cluster of servers used for XMPP communication.
- Local Development Environment - simple environment for running agent-based simulations.
Documentation of Agents Assembly can be read here.
Python 3.10
The translator package can be installed by running:
pip install aasm
Alternatively, you can download this repository. No additional dependencies are required.
You can run the translator as a package. To translate agent.aasm to SPADE, run:
python -m aasm.translate agent.aasm
For more usage information, run:
python -m aasm.translate --help
generatingcode.py- generated codepython_code.py- Python code base classpython_graph.py- Python graph code generation from the intermediate representationpython_spade.py- SPADE agent code generation from the intermediate representation
intermediateaction.pyagent.pyargument.py- arguments used in instructionsbehaviour.pyblock.py- block of code representationdeclaration.py- declarations used in actionsgraph.pyinstruction.py- instructions used in actionsmessage.py
parsingparse.py- parsing environment from Agents Assembly fileop/- Agents Assembly operationsstate.py- state definition used for the parsing process
preprocessorconstants.py- constants used in the preprocessormacro.py- macro definitions used in the preprocessorpreprocessor_item.py- preprocessor base itempreprocessor.py
utilsexception.pyvalidation.pyiteration.py
translate.py- entrypoint
Please follow the contributing guide if you wish to contribute to the project.