Comment Re:Anybody using Ada? (Score 1) 165
At the university I attended, it was the standard language for all the courses that involved programming or software design. That may have been because the head of the computer science department was on one of the committees that designed it. This was about 20 years ago. I was aware that it's still used for real-time applications, particularly military and aerospace, but I'm mildly surprised that anyone still cares about it enough to develop a new version of the standard. I applied for a programming job at a defence company that used it, circa 1995, but haven't had anything to do with it since.
I wouldn't describe it as complex, particularly, but it is pedantic and verbose, requiring you to prove that you know what you're doing. You have to spell out a lot of things that other languages assume by default or leave up to the specific implementation. For example, there's a statement that explicitly does nothing, like NOP in assembly languages, so you can say things like "if condition then do something else null; end if;" so that it's clear to the reader that you definitely want to do nothing if the condition is false - you didn't just forget about it. Another quirk is that if you want to mix AND and OR in a Boolean expression, you have to use brackets to show what order you want things evaluated in. "x or y or z" is fine, as is "x and y and z", but "x or y and z" is a syntax error - you have to write "(x or y) and z" or "x or (y and z)". The reasoning is that other languages differ as to whether the two operators have different precedence or the same precedence, so you might expect it to evaluate one way and find that it evaluates the other way.
Fun fact - Oracle's PL/SQL, the language in which you write triggers and stored procedures for the database, owes a lot of its syntax and semantics to Ada.