Language introduction

ASTER language project logo
ASTER (Another Syntax Tree Execution Runtime) is a dynamically typed, garbage collected, and interpreted language with arithmetic, string manipulation, boolean logic, and function support.
There are many ASTERs and Asters out there. We do not claim any copyright for the ASTER name and respect all the past and current uses of the name by others. ASTER is first and foremost an acronym for the full name of the language specification “Another Syntax Tree Execution Runtime”. Specifically, we provide an interpreter of ASTER, under the marketing name Int4 Aster.
Language features
Basic arithmetic and string operators
Support for indexed lists and multi-dimensional tables
Boolean operators
Variables with automatic garbage collection
Conditional operations
User-defined functions
Interoperability with Int4 Suite features
While not strictly a feature of the language itself, ASTER is distributed with a set of functions that enable interaction with Int4 Suite features, specifically by allowing access and manipulation of the test execution step data and context. For details, please see the Working with Int4 Suite section.
Operating environment
ASTER is implemented as set of ABAP classes that enable parsing and execution of the language script in safe and isolated environment. The script is parsed into a syntax tree which is safely executed by the ABAP runtime. The language does not enable by default any interaction with the underlying ABAP server or it’s environment.
To enable Int4 Suite interoperability, certain functions enable interaction with Test Case and Test Run execution data (payloads, variables), including modification of the test case payload content. There is no ability to remove or alter Test Case library data, nor to change the test type or test execution environment, ensuring script execution safety.
The interpreter is open and allows extensions with custom functions built directly in ABAP, which could be used to enable additional features outside of the original scope of the language.