There is a huge gap between agent programming languages used for industrial applications and those developed in academia.
While the former are mostly extensions of mainstream programming languages (e.g. Java), the latter are often very specialized
languages, based on reactive rules. These specialized languages enjoy clear semantics and come with a number of knowledge
representation features, but lack important aspects such as
code re-use,
modularity,
encapsulation etc.
We present a method to extend the syntax of existing specialized agent oriented programming languages to allow more efficient
hierarchical structuring of agent programs. We illustrate our method through a simple language based on reactive rules. We then gradually extend the core language by
several higher level syntactic constructs, thus improving the support for source code modularity and readability.