Skip to content

aindilis/jason

 
 

Repository files navigation

Jason

Jason is an interpreter for an extended version of AgentSpeak. It implements the operational semantics of that language, and provides a platform for the development of multi-agent systems, with many user-customisable features. Jason is available as Open Source, and is distributed under GNU LGPL.

Jason is developed by Jomi F. Hübner and Rafael H. Bordini, based on previous work done with many colleagues, in particular Michael Fisher, Joyce Martins, Álvaro Moreira, Renata Vieira, Willem Visser, Mike Wooldridge, but also many others, as acknowledged in the manual (see the documents page).

Documentation

Most of the Jason documentation is available in the doc folder.

Installation

For Jason users

ℹ️
In Jason 2.0 the way to run the Jason IDE (based on jEdit) has changed. Rather than running an application (Jason.exe or Jason.app), the IDE is now run by double clicking the jedit/jedit.jar file or using the script files in the scripts folder.

For Jason developers

git clone https://github.com/jason-lang/jason.git
cd jason
./gradlew config // (1) (2)
  1. the config task builds the jason jar, configure jason properties file, and place all jars in build/libs.

  2. this task also prints out the commands to set up the JASON_HOME and PATH variables.

Examples can be run using the jason shell script, for example:

jason examples/gold-miners-II/miners.mas2j

The Jason IDE based on jEdit can be launched by the jason-ide script or java -jar build/jedit/jedit.jar.

Other useful gradle tasks:

./gradlew jar     // (1)
./gradlew doc     // (2)
./gradlew clean   // (3)
./gradlew release // (4)
  1. generates a new jason jar.

  2. generates the javadoc and transforms asciidoc files into html (Docker must be running for the latter).

  3. cleans all generated files.

  4. produces a zip file in build/distributions to be distributed to users.

An eclipse project to change the Jason implementation can be created form menu "File/Import/Existing Gradle Project".

About

Jason is a fully-fledged interpreter for an extended version of AgentSpeak, a BDI agent-oriented logic programming language.

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Java 91.1%
  • ASL 4.5%
  • XSLT 3.0%
  • HTML 1.1%
  • Shell 0.3%
  • Ruby 0.0%