- Old school procedural paradigm
- Static typing
- C / Java-like gangsterish syntax
- Compilation into bytecode, execution by virtual machine
- conditional (aka if/else if/else)
- condition-controlled loop (aka while)
- early exit from loop (aka break)
- continuation with next iteration of loop (aka continue)
- functions with arguments and return value
- arithmetical: addition, subtration, division, multiplication, pre increment, pre decrement, negation
- logical: and, or, not
- comparisons: equal, not equal, greater, greater or equal, less, less or equal
- variable assignment
- function call
- array indexing
- array allocation
- variable definition
- import definitions from another file
- 32-bit signed integer
- 64-bit signed integer
- double-precision floating point number
- 1-byte ASCII character
- sequence of characters
- 1-byte boolean value
- fixed size array of aforementioned data types