This reminds me of a note in FreeBSD rc(1) man page[0] under "INCOMPATIBILITIES" > The Tenth Edition rc does not have the else keyword. Instead, if is > optionally followed by an if not clause which is executed if the pre- > ceding if test does not succeed. which i found pretty interesting [0]: https://www.freebsd.org/cgi/man.cgi?query=rc
if (X) { doY(); }
if not /* X is implied */ { doZ(); }
In languages like Python it could be generalized to enable one to use “if not” with an expression as usual but omit the expression if it is the last branch of a conditional, thus getting rid of the “else” keyword while maintaining or arguably improving readability.That said, there is no programming language that could entirely map to a spoken one, so perhaps it’s actually beneficial to shed any semblance of such mapping early-doors in the learning process.