>the Ada implementation had nearly double the lines of code as the C reference
I'll point out to others in the audience: this is largely an artifact of Ada syntax being more verbose, and Ada programming practice favouring longer and more explanatory identifiers compared to C (where a lot of code looks like line noise). For example, see this post and compare the size of the C code vs. the equivalent Ada code:
> A lot of the Ada limitations pointed out in the paper were fixed in Ada95.
I was going to say that as well. I only more recently hopped on the train, but I didn't see anything which would be problematic for Ada 2012. I've had no problems in my projects doing bit manipulation, using function pointers, dynamic dispatch, or interfacing with C code which uses `void*`.
> this is largely an artifact of Ada syntax being more verbose
There's a very negative connotation of "verbose" like it's the worst thing in the world. The better way of describing this is the language is explicit and focuses on describing intent. This means it doesn't take long to learn to read and understand standard library code or code from other projects.
>There's a very negative connotation of "verbose" like it's the worst thing in the world. The better way of describing this is the language is explicit and focuses on describing intent. This means it doesn't take long to learn to read and understand standard library code or code from other projects.
I agree that it's good. But it's objectively longer, which is what I meant.
Just had a look at the linked page out of piqued curiosity. The "get started" link on the homepage points to a GitHub release page (https://github.com/AdaPlusPlus/gcc/releases/tag/0-2-0) with a 908MB "adapp-for-linux.gz".
I'm presuming this is real (908MB would take a tad too long to download today), but if it isn't, that's definitely up there in terms of execution. I completely believe it.
It's a very well-executed April Fool's Joke in that regard. But it's still a joke. And 0xDEEPFAC is apparently very committed to the idea that it's a real thing and not a joke. Just look at the commit dates if you have any doubt (and the fact that there haven't been any since then).
It is not? As the creator I can tell you that the parser and analyzer of GCC/GNAT were modified.
For example, supporting implicit "use" clauses for packages was a difficult problem to solve - not to mention allowing for abbreviated type names in the Standard package.
I'll point out to others in the audience: this is largely an artifact of Ada syntax being more verbose, and Ada programming practice favouring longer and more explanatory identifiers compared to C (where a lot of code looks like line noise). For example, see this post and compare the size of the C code vs. the equivalent Ada code:
https://borretti.me/article/signed-integers-asymmetrical