A Random Walk Through Ada (2014)
cowlark.com
cowlark.com
I do remember the professor going on and on about why the safety was necessary for his beloved Military and Avionics software (he worked at an avionics software company in his "off" hours). It makes a lot more sense now, and oddly enough with my interest peaking in Rust and Go, it might be worth looking at again... or maybe I'll just stick with languages that don't invoke bad memories.
OK, how about Ada vs Haskell?
Does Ada have anything like Haskell typeclasses or am I going to have to write a different sort function for every single data type which can be sorted?
Does Ada have a numeric tower, or will I have to accept truncation and re-write basic numeric functions?
Haskell has strong static typing without forcing me to specify irrelevant details up front. How about Ada?
Generics and interfaces.
> Does Ada have a numeric tower, or will I have to accept truncation and re-write basic numeric functions?
Subtypes and ranges.
> Haskell has strong static typing without forcing me to specify irrelevant details up front. How about Ada?
If you mean type inference. No in Ada everything has to explicit.
Now you are comparing Apples and Oranges here, as Ada is a systems programming language.
So it allows for memory safe systems programming, with all the direct hardware access and memory allocation control that such use cases require.
Whereas Haskell, currently, still requires language extensions like on HalVM and House OS implementations.
Perhaps comparing ATS and Ada would be more interesting.
Nice article, Ada is on favourite languages list.
Adacore also puts out a slightly more state of the art version of gnat but it's GPL so in theory everything you make with it needs to be gpl as well (though of course that's fairly irrelevent for many classes of software)
As to my specific situation, I cannot release source code and so the Adacore GPL licensed product is a no-go.
(I am not a lawyer; do not rely on my advice without thoroughly verifying it.)