Features

The current version of the action language has the following features and restrictions.

  • The language distinguishes syntactically between expressions containing method calls, and expressions containing only navigation (references to associated class instances). It is allowed to make an operation call (for model or collection operations) on the result of a navigation, but it is not allowed to further navigate from the result of a call (otherwise than by storing the result of the call explicitly in an attribute). This is in order to simplify compilation: expressions with nested calls may require temporary variables.

  • The language uses the context information to validate that methods and attributes used in expression/action are visible from the context where they are used.

  • The language performs type checking for each arithmetic and logical operations and parameter passing.

  • The language does not support conditional or loop constructs for actions. This may be added in the future version of the action language.