I mentioned the similarity with Oberon-2 syntax because most other currently used programming languages are based directly or indirectly on
the ancient C syntax. Trankvila and Oberon-2 syntax differs from those, for example, in the following aspects:
- assignment with ":=" instead of "="
- test for equality with "=" and "#" instead of "==" and "!="
- keywords instead of curly braces to delimit blocks
- declaration of variables and parameters in the form "name1, name2:
Type" instead of "Type name1, Type name2"
- semicolon is used as a separator, not as a delimiter
- type-bound functions/procedures ("methods") use an explicitly defined
receiver parameter instead of "this" or "self".
- all keywords are written with upper-case instead of lower-case characters
- and the main difference: the entire EBNF grammar fits on a single
instead of several pages