It's odd. Why advocate for a language you don't use?
Here are some common giveaways:
- "Ada has a garbage collector" - It's optional part of the specification, in practice most compilers don't implement it.
- Confusing SPARK (the formal verifier) with Ada, or even claiming that SPARK is now part of the Ada spec. This is simply not true.
- Not knowing that contracts are enforced at runtime and they're typically disabled in release builds.
- Claiming that Ada is memory safe. Ada doesn't have a borrow checker. Ada doesn't have smart pointers out of the box (unique_ptr is actually unimplementable due to lack of move semantics). Typical non-embedded codebase is full of "new" and "Unchecked_Deallocation", usually wrapped with controlled types, much like C++ RAII.