Live data from Hacker News

Introduction to Ada

learn.adacore.com

131–140 of 193 posts

Re: Introduction to Ada

#131
post #129

Earlier quoted context omitted.

An advanced type system: https://learn.adacore.com/courses/intro-to-ada/chapters/stro... Built-in concurrency and concurrent-safe data passing: https://learn.adacore.com/courses/intro-to-ada/chapters/task... Design-by-contract programming: https://learn.adacore.com/courses/intro-to-ada/chapters/cont... Provably safe programs if you use the SPARK subset of Ada: https://learn.adacore.com/courses/intro-to-spark/chapters…

> An advanced type system: Not compared to Haskell. Ada has a strong type system for an Algol-derived language, but the world has moved on without it in terms of type systems in general.

Almost every language has a less advanced type system than Haskell. But compared to most mainstream languages, Ada's type system is still quite advanced.

Re: Introduction to Ada

#132

Shame that the tools for Ada go from bad to worse even in the best case scenario. It's no wonder nobody really wants to use the language when other languages have all sorts of tools and ecosystems around them that make everything a breeze.

> Shame that the tools for Ada go from bad to worse even in the best case scenario.

What does that sentence even mean?

Re: Introduction to Ada

#133
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…

Ada is just a language. The 99.99% of the experience you've acquired there perfectly transfers to any other domain or language - only uneducated HR gatekeepers won't recognize this.

Re: Introduction to Ada

#134
post #133
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…

Ada is just a language. The 99.99% of the experience you've acquired there perfectly transfers to any other domain or language - only uneducated HR gatekeepers won't recognize this.

Unfortunately in my experience that "only" represents a somewhat large percentage of HR or hiring managers.

Re: Introduction to Ada

#135
post #115

I like that the primitives types are so refined in Ada. That's something that is missing in a lot of languages. You can define subtypes or different types and ranges from the integer type for example. A few years ago, I wrote a little blog entry about it: https://www.dialectical-computing.de/blog/blog/2011/05/08/de...

Any recent popular languages with similar support for types of Ada? Is such type system being costly to implement the reason not many other languages pick up the feature?

Ada is peculiar because the checks for the ranges are done at runtime. This mean you need a small runtime. A lot of languages are inspired by C and C++ and the types are simple in these languages so it could be an explanation.

Haskell has `Numeric.Natural` but I don't think you can define an integer constrained to a range. It probably goes beyond what the type system can do (statically). I think it's possible with Dependent Types (in Idris) but this is rather new.

Re: Introduction to Ada

#137
post #133

Earlier quoted context omitted.

Ada is just a language. The 99.99% of the experience you've acquired there perfectly transfers to any other domain or language - only uneducated HR gatekeepers won't recognize this.

Unfortunately in my experience that "only" represents a somewhat large percentage of HR or hiring managers.

Then (after you make sure you learn enough of another language to not embarrass yourself) be a little bit creative in your resume/CV in order to pass that stupid filter.

Re: Introduction to Ada

#138
post #129

Earlier quoted context omitted.

> An advanced type system: Not compared to Haskell. Ada has a strong type system for an Algol-derived language, but the world has moved on without it in terms of type systems in general.

Almost every language has a less advanced type system than Haskell. But compared to most mainstream languages, Ada's type system is still quite advanced.

So Ada's type system is better than an "average" language but not as good as a good language. Therefore, if I'm looking to trade up from an "average" language, it's in my interest to leapfrog Ada and go with a good language.

Re: Introduction to Ada

#139
Maybe somebody remembers better, but I remember when I looked into it over a decade ago, GNAT had the problem that it didnt have a GNU library linking exception or so. Does anybody remember the history?

Also I still find the whole environment confusing for windows. GNAT Programming Studio IDE seems to be useful, but what ballpark is the pricing for the commercial version. Anybody has an idea?

Re: Introduction to Ada

#140
post #138

Earlier quoted context omitted.

Almost every language has a less advanced type system than Haskell. But compared to most mainstream languages, Ada's type system is still quite advanced.

So Ada's type system is better than an "average" language but not as good as a good language. Therefore, if I'm looking to trade up from an "average" language, it's in my interest to leapfrog Ada and go with a good language.

Actually, using Ada + SPARK, there are many static properties that can be verified which would be unverifiable in Haskell, and would be awkward to verify even in Agda or Idris.

But you've got your mind made up already -- please just enjoy your tools, and let others enjoy theirs.

Post reply on HN