Compare 8th
Comparing programming languages is always a tendentious matter: everyone has their preferences and reasons for them. We hope to convince you to give 8th a try!
8th is different from the languages you’re most likely familiar with. First of all, it’s a Forth derivative, so it’s a stack-based language with RPN syntax.
It does not use a VM. Instead, it generates native code for the device on which it is running, at run-time.
It does (almost) no optimization. The only optimization it performs is “tail-call elimination”.
It is extremely cross-platform, meaning that the same code runs on all platforms 8th targets (with the very few exceptions being hardware or OS-specific features not universally present).
It is “security-forward”, meaning that the language itself and the runtime are designed to make your programs much more resistant to security breaches of all sorts.
Compared to C/C++
Similarities
- 8th is procedural like C
- 8th has namespaces like C++
- Strings in 8th look the same as C/C++
- Must declare variables or functions before using them
Differences
- 8th is not object-oriented like C++
- Interactive REPL
- No need to compile or link; just run directly
- All data is strongly typed, and there is no way to “cast”
- No reserved words at all and almost no syntax
- No need for end-of-statement delimiters
- Many features are built-in
Compared to Java
Similarities
- 8th is procedural
- 8th has namespaces
- Strings in 8th look the same as in Java
- Must declare variables or functions before using them
- Prevents direct access to memory
Differences
- 8th is not object-oriented
- Interactive REPL
- Not virtual-machine-based
- Allows access to underlying hardware without “JNI” manipulations
- No need to compile or link; just run directly
- No reserved words at all and almost no syntax
- No need for end-of-statement delimiters
- No need for verbose import statements
- Many features are built-in
Compared to Python
A more in-depth comparison with respect to Python is in the manual.
Multiple Platforms