Live data from Hacker News

Introduction to Ada

learn.adacore.com

91–100 of 193 posts

Re: Introduction to Ada

#91
I spent about 4 years of my early career working with Ada in the aerospace industry (specifically, I worked on the GPS satellite program). It was rather career-limiting because I ended up as a young engineer with a lot of experience in an extremely niche language.

It took a while, but I was finally able to escape and start working with more modern technology (involved a lot of self-learning on side projects and finally finding a rare employer that believed engineers are capable of learning new skills).

I do occasionally get emails from recruiters looking for Ada programmers - they're exclusively for legacy maintenance. Fortunately, I'm in a position to ignore them now :)

As a language, Ada isn't bad. I'd prefer it over C++ or Golang for sure, but there just isn't enough interesting work going on using Ada to warrant investing time in learning the language.

Re: Introduction to Ada

#92

Earlier quoted context omitted.

I still have a copy of the original Ada MIL spec.

I think someone was looking for that. You don't have a copy of the other languages do you? Red is online, but blue and yellow are not.

I bought the original spec MIL-STD-1815 10-December-1980 back in 1980 or so, but it didn't survive a purge I made when moving. A couple years ago I went looking for it. It's not online anywhere, but I found an old library copy for sale and snapped it up. It's green, and I don't have any of the other specs.

I'm sad I also purged my DECSystem-10 "Orange Book". I've never been able to find a replacement anywhere.

Re: Introduction to Ada

#93

Earlier quoted context omitted.

At the time, I had only written a couple toys. I thought writing an Ada compiler was impossible. It's also impossible to write a C++ compiler, but I didn't realize that and did it anyway (several years later, after I'd written a C compiler). I thought that C++ was just adding member functions and a few keywords to C.

Why didn't you, at least, put in Ada's numeric type system into D? You would've had a massive edge over C++ right there.

Probably because I didn't have the Ada spec anymore at the time.

But D did get _ embeddable in numeric literals, a very nice feature that D made popular and now it's normal in other languages.

Re: Introduction to Ada

#96
I was a freshman CS student in 2007 and this was the language that I learned in CS 101. I wonder how common that was.

Frankly, that was my first exposure to programming, and I thought the language was strange enough and the prof wasn't good enough, so switched majors. Still the only formal programming education I've had.

Re: Introduction to Ada

#97
post #87

Earlier quoted context omitted.

>Probably mostly due to licensing issues. 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 ha…

I talked to an Ada Core sales guy at Embedded World Nuernberg. He mentioned they have a cheap license now for small companies. 5000 Euros.

That could be cheap or expensive. Is it one-off? Per seat? Per team? Monthly? Yearly?

Re: Introduction to Ada

#98

Earlier quoted context omitted.

I don't have extensive experience but learned it a few years ago and believe I can answer some your questions. This is subjective, others might disagree or perhaps add their own experiences. > Why did Ada not manage to get a significant foothold outside of some small domains? Probably mostly due to licensing issues. Ada has a runtime that you basically have to use and the most complete AdaCore version forces you to r…

>Probably mostly due to licensing issues. 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 ha…

Thanks for the "corrections". Some of them are fine (I didn't know about the FSF license change) but with some I really don't agree.

> 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.

Various fairly essential libraries maintained by AdaCore are under GPL, so you could not use them for non-GPL software that is distributed. That's what I meant by "incomplete", because the FSF version was traditionally used as the free option for developing distributed, proprietary software. AdaCore has always blocked that by making essential libraries GPL instead of, say, LGPL.

If you used AdaCore it didn't matter, since either you were forced to make your program GPL anyway, or you paid for a commercial license.

> MGPL hasn't been a thing for at least 10 years now. The FSF version if GPLv3 with linking exception.

The question asked was why Ada was not more successful / popular. Your correction just adds more evidence to the licensing confusion. The problem is you can't even be certain it stays a certain way.

> The syntax is not special, it's like any other, it's defined by a grammar, as are all languages.

No, Ada has a rather special grammar in comparison to most other languages, because it specifies every construct on its own, and that is one of the reasons why it is harder to learn than other languages. Grammars for other languages are much more compact and use more shared non-literals.

> all languages are "complete" to some degree

That's not the point. Ada provides much more functionality than most other languages, for example memory alignment for embedded programming and OOP with tagged types. It's as expressive as C++ for systems programming. That's what makes it way more complex than lnaguages like, say, Scheme R5RS, C, or Go. It's easier to learn than C++ but it's much harder to learn than a related language like Pascal or Modula, for instance.

> A lot of languages re-use keywords

Whataboutism? Languages that re-use keywords are generally a bit harder to learn than those with only few constructs and no keyword reuse. You don't think so?

I've never met any Ada programmer before who thought Ada does not have a relatively long and steep learning curve. You'd be the first I've met.

Re: Introduction to Ada

#99
post #91

I spent about 4 years of my early career working with Ada in the aerospace industry (specifically, I worked on the GPS satellite program). It was rather career-limiting because I ended up as a young engineer with a lot of experience in an extremely niche language. It took a while, but I was finally able to escape and start working with more modern technology (involved a lot of self-learning on side projects and final…

> their just isn't enough interesting work going on using Ada to warrant investing time in learning the language.

You can help change that -- by doing interesting work! The nice thing about open source and self-directed projects is that you can use what you want based on its own merits, and leave bandwagoneering for when you have to find a job.

Re: Introduction to Ada

#100
post #91

I spent about 4 years of my early career working with Ada in the aerospace industry (specifically, I worked on the GPS satellite program). It was rather career-limiting because I ended up as a young engineer with a lot of experience in an extremely niche language. It took a while, but I was finally able to escape and start working with more modern technology (involved a lot of self-learning on side projects and final…

How's the $$$?
Post reply on HN