This first example is the classic hello world. It is composed by a single agent executing a println action to print on the console the message. The Jason MAS configuration file hello-world is the following:

MAS hello_world {
  environment: 
  c4jason.CartagoEnvironment
    
  agents:  
  hello_agent agentArchClass c4jason.CAgentArch;

  classpath: "../../../../lib/cartago.jar";
             "../../../../lib/c4jason.jar";    
}

The declarations environment: c4jason.CartagoEnvironment and agentArchClass c4jason.CAgentArch are fixed, and specify that the MAS will exploit CArtAgO environments and that agents need to have a proper predefined architecture to work within such environment. The classpath declaration is needed to include CArtAgO library (cartago.jar) and the specific Jason bridge (c4jason.jar) in the classpath. The program spawns a single agent (hello_agent) whose task is to print on standard output the classic hello message. For that purpose it exploits the println operation provided by the console artifact.

Source code of the hello_agent (in hello_agent.asl):

!hello.

+!hello : true
  <- .my_name(Name);
     println("Hello, world! by ",Name).

Highlights: