ASTRA is an Agent Programming Language for people who wish to create intelligent distributed/concurrent systems that are built on the Java platform. It is designed to be easy to learn and familiar to developers who are experienced in using mainstream Object-Oriented Programming Languages.

This has been achieved by designing ASTRA to be closely integrated with and influenced by Java. It is strongly typed and supports reuse through multiple inheritance.  Some of the main design decisions behind ASTRA have been made in an attempt to reduce the complexity of writing and running programs. In terms of writing ASTRA code, we have introduced a number of standard programming constructs, such as if statements, while loops, local variables, and assignment. We have also put a lot of effort into writing a compiler that is able to catch as many bugs as possible before you run the code.

In terms of running ASTRA code, we have created an approach where the code can be run directly without the need for additional configuration files. This makes running an ASTRA program the same as running any program written in a mainstream programming language.  Tool support for ASTRA is provided through a plugin for the Eclipse IDE.


  • You want to develop multi-agent programs.
  • You want to do this using a familiar and simple to use language.
  • You are comfortable with Java-style syntax.
  • You prefer typed languages to untyped languages.
  • You want to rapidly prototype solutions to problems using an agent programming language
  • You want to integrate agent technology into your existing platform without the need to redesign the whole system.