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
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.