limited. If an exception is thrown and is not caught, the information about what caused the exception is very sparse. Basically the user is given a class- and method number. These numbers can then be used to track down where an exception was thrown, by looking at information given by the compiler. LeJOS also gives the possibility of opening a connection to a *remote console*. This forwards all output from the brick to the computer, making it a lot easier to debug applications, since the screen of the brick is quite small.

Communication {#communication}
=============

Communication is a twofold matter, since the system should be able to handle both communication between ${A_{\textsf{Jason}}}$ and ${A_{\textsf{Lego}}}$ for any agent $A$ as well as communication between two distinct agents, $A$ and $B$.

#### ${A_{\textsf{Jason}}} \leftrightarrow {A_{\textsf{Lego}}}$

LeJOS includes a PC API, which enables a computer to communicate with an NXT brick using either bluetooth or USB. While USB is faster than bluetooth, it also highly reduce the usefulness of the robot, since the it will be fastened to the computer by a cable. Using bluetooth, the agent can move much more freely (within the range of the bluetooth connection). Since the communication is 