3 ms·
Not really. That was written by someone who doesn't really know the language and is writing from a position of hearsay. Ada is "verbose" in that it has fairly
by jordanb 6mo ago
Not really. That was written by someone who doesn't really know the language and is writing from a position of hearsay.
Ada is "verbose" in that it has fairly rigorous type specification. It was verbose in comparison to languages that had weak or primitive typing. A lot of the "bureaucracy" in the language is being very specific about types to catch bugs.
Ada 83 did have a problem in that it lacked [interfaces]. This could sometimes limit code reuse.
Ada was designed to be "readable" but so was Pascal and many other languages (and, more recently for instance, Python). "Readability" in those days mainly meant preferring keywords over operators and allowing for infix notation with proper order-of-operations.
- csb6 6mo agoAda 83 did have generics - maybe you meant OOP support? That wasn't added until Ada 95.
- jordanb 6mo agoI misspoke I actually meant interfaces. Ada forbade multiple inheritance to avoid the diamond problem but Java implemented interfaces as a solution and Ada adopted them. https://www.adaic.org/resources/add_content/standards/05rat/html/Rat-2-4.html https://www.adaic.org/resources/add_content/standards/05rat/...
- mcc1ane 6mo agohttps://ada-lang.io/docs/learn/lang/being-more-terse https://ada-lang.io/docs/learn/lang/being-more-terse
- jordanb 6mo agoIs this supposed to be some sort of own? That article is about language features Ada has to reduce verbosity, including operator overloading and some brevity features. A explicit strong, statically typed language is going to have a lot of text in the file about types. When Ada came out this was a jarring concept for a lot of people (especially C programmers) which lead to the "Ada is a bureaucratic language" complaint. In fact, Ada has stuff like operator overloading where C, for instance, does not. But it absolutely has types and they absolutely are not optional and are explicit.