| Feature | 1.04.0 dep. | 1.05.0 dep. | 1.06.0 dep. | 1.07.3 dep. | 1.08.1 dep. | 1.09.0 dep. | 1.10.0 dep. |
|---|---|---|---|---|---|---|---|
| ' Comments | X | X | X | X | X | X | X |
| !"literal" prefix | X | X | X | X | X | X | X |
| "." in Symbol Names | X | X | X | X | X | X | X |
| "_" in Symbol Names | X | X | X | X | X | X | X |
| $ suffix optional on built-in string functions | X | X | X | X | X | X | X |
| $"literal" prefix | X | X | X | X | X | X | X |
| : Statement Separator | X | X | X | X | X | X | X |
| _ Line Continuation | X | X | X | X | X | X | X |
| 16-bit INTEGER, 32-bit LONG | - | - | - | - | - | - | - |
| 32-bit INTEGER, 32/64-bit LONG | X | X | X | X | X | X | X |
| Anonymous Inner Types | X | X | X | X | X | X | X |
| BYREF default for passing arguments | X | X | X | X | X | X | X |
| BYREF default for passing UDT's | X | X | X | X | X | X | X |
| BYVAL default for passing scalars | - | - | - | - | - | - | - |
| Can access keywords with "__" prefix | - | - | - | - | - | - | - |
| Classes | - | - | - | - | - | - | - |
| DATA (Module Level) | X | X | X | X | X | X | X |
| DATA (Procedure Level) | - | - | - | - | - | - | - |
| DATA Inside Module Level Compound Statements | - | - | - | - | - | - | - |
| Explicit Scope Blocks | X | X | X | X | X | X | X |
| Function return type can be declared AS TYPE | X | X | X | X | X | X | X |
| Function return type can be declared with suffix | X | X | X | X | X | X | X |
| Function return type can be UDT | X | X | X | X | X | X | X |
| GOSUB (Module Level) | - | - | - | - | - | - | - |
| GOSUB (Procedure Level) | - | - | - | - | - | - | - |
| Implicit Scope Blocks | X | X | X | X | X | X | X |
| Implicit Variables | X | X | X | X | X | X | X |
| Initialize array bounds with ... | X | X | X | X | X | X | X |
| Initializer using a function | X | X | X | X | X | X | X |
| Initializers | X | X | X | X | X | X | X |
| Labels (floating point) | X | X | X | X | X | X | X |
| Labels (Integer) | X | X | X | X | X | X | X |
| Labels (Named) | X | X | X | X | X | X | X |
| Multiline Comments /' '/ | X | X | X | X | X | X | X |
| Namespaces | X | X | X | X | X | X | X |
| Overloaded Operators | X | X | X | X | X | X | X |
| Overloaded Procedures | X | X | X | X | X | X | X |
| Pointers | X | X | X | X | X | X | X |
| Preprocessor | X | X | X | X | X | X | X |
| Scoped #define's | X | X | X | X | X | X | X |
| Suffixes (! # $ % &) | X | X | X | X | X | X | X |
| Symbols with same name as keywords | - | - | - | - | - | - | - |
| Threading | X | X | X | X | X | X | X |
| Unicode | X | X | X | X | X | X | X |
| Unsigned Integer Types | X | X | X | X | X | X | X |
| Up to 64-bit Integer Types | X | X | X | X | X | X | X |
| Use of CALL before definition | - | - | - | - | - | - | - |
| Variadic functions | X | X | X | X | X | X | X |
| Variadic macros | X | X | X | X | X | X | X |
Table generated on
August 6, 2022