114 karma · joined May 18, 2017
Yup. See https://www.reddit.com/r/ada/comments/ijwqfl/last_call_on_th...
> Ada has a runtime that you basically have to use and the most complete AdaCore version forces you to release executables under GPL.
See above.
> The FSF version is less complete (many libraries are missing)
Incorrect, AdaCore just packages their libs with their version of the compiler, with FSF, you have to build them yourself, which is a pain. But they are working on that.
> and allows you to use the much more permissive mGPL version.
MGPL hasn't been a thing for at least 10 years now. The FSF version if GPLv3 with linking exception.
> However, it always lags behind the version from AdaCore and many developers in the past were scared away by the licensing issues.
And the cost of licencing from AdaCore. Not small company / startup friendly, but apparently that has changed, but you still have to email them for prices!
> - Ada is a very complete language and not easy to learn. The syntax is special, in that it specifies each construct on its own and re-uses keywords.
This makes no sense, all languages are "complete" to some degree. The syntax is not special, it's like any other, it's defined by a grammar, as are all languages. A lot of languages re-use keywords.
1) The creator of #Ada, caracal, once said that when he was in the army, there were two groups of people: i) those who were interested to learn about Ada and ii) those who were totally against it without having seen any of the language at all. The second group were the ones who, when they came around with the green manuals, just refused to even read them.
2) I went back to Ada after burning out in a shitty games company, essentially sitting in a debugger for 19 hours straight isn't good. The only time I have to use a debugger is when using pointers, Ada allows you to avoid pointers for the most part.
Ada's type system, data modelling, it's unparalleled anywhere else ever.
There's not enough people working with Ada in OSS.
It's easy to burn yourself out on a big project sometimes.
3) Very modern, the docs are good, but the tooling is lacking. But then I come from a time of command lines and no package managers.
You could knock out an object-Pascal / Oberon compiler in a matter of weeks imo.
A lot of the older closed compiler are still based around the program library idea which is no longer required, considering GNAT is file / project based. I've only used GNAT and have no idea how the program library versions work.
MODULE X;
...
END MODULE X.
and Ada's: package X is
...
end X;
Ada's package feels like one statement containing others, whereby Modula's looks like it ends on the first line.