Live data from Hacker News

Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

seas.gwu.edu

21–30 of 74 posts

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#22

The attribute mechanism is something a lot of languages would benefit from. Need to know the maximum value of an integer? Just ask the integer type to tell you. No going to a library to look up inscrutable constants.

C++:

  numeric_limits::max ()

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#23

The attribute mechanism is something a lot of languages would benefit from. Need to know the maximum value of an integer? Just ask the integer type to tell you. No going to a library to look up inscrutable constants.

In C# you have Int32.MaxValue. I always assumed it was pretty standard everywhere.

Btw, Ada is on my list of languages to learn since 2011. I guess I will put it first on the 2015 good resolutions list :-)

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#24
post #5

Earlier quoted context omitted.

Ada used to be basis for CS Curriculm at Cal Poly Pomona (Circa '92- '98). Ada teaches good practice. One prominent feature is that there is no implicit casting; Add a float and int, you get a compile error. It's good to know that you have to do exactly what you want and the compiler enforces this.

Haskell is similar in this sense. And Golang (IIRC, only coded a few hundred lines in it two years ago). Example from a Haskell REPL, where Haskell won't even upcast an Int (machine int) to an Integer (unbounded int, python style): Prelude> let a = 1 :: Int Prelude> let b = 2 :: Integer Prelude> a+b :4:3: Couldn't match expected type `Int' with actual type `Integer' In the second argument of `(+)', namely `b' In the…

> unbounded int, python style

Arrrgh!! You mean "Lisp style". Lisp has had arbitrary-precision integers ("bignums") since 1971 -- long before Python was invented.

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#25
This is certainly an impressive list of projects. Ada seems to be favored for critical software that can't ever fail. I've been considering how to achieve this type of software reliability for more "enterprisey" applications. Formally verifiable languages are certainly intriguing, but would be a hard sell for the managers at the Fortune 100 company where I work.

Reading the wikipedia page for Ada didn't really give much insight into why the language is so heavily favored for applications like avionics software. Built in task based concurrency is certainly nice, but not a game-changer. Can someone more familiar with Ada explain what makes it so popular for high reliability applications?

Or is it a question of culture and tooling rather than the language itself?

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#26
A lot of radar systems run on Ada. Its takes a little getting used to, but its a good language.

Ada has a c binding package so it can call down to the OS libraries (networking, shared memory), which is great, but kills some of the niceness of living in an ada world.

When I was trying out GO, I got a little ada flashback for some reason.

The package system was good.

I disliked ada strings though.

When I left the industry, they were looking for alernative languages for new projects. GCC Ada compiler was being considered for maintaining older projects, seemed decent. http://libre.adacore.com/tools/gnat-gpl-edition/

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#28
post #7

Although I've never coded in Ada I have had to read existing code to figure out what it was doing. Ada struck me as a language that would be a pain to write in(at least it would take a long time) but it was a pleasure to read. Even without an intimate knowledge of the language (I was a C++ guy) I was able to figure it out.

I took a course on it in the 80s when I worked for a government contractor. It was fussier than Pascal but once you got it to compile, the resulting code was pretty good. I imagine that over time you'd just adapt to the environment and not even notice it unless you also coded in other languages.

Re: Who's Using Ada? Real-World Projects Powered by the Ada Programming Language

#29
post #25

This is certainly an impressive list of projects. Ada seems to be favored for critical software that can't ever fail. I've been considering how to achieve this type of software reliability for more "enterprisey" applications. Formally verifiable languages are certainly intriguing, but would be a hard sell for the managers at the Fortune 100 company where I work. Reading the wikipedia page for Ada didn't really give m…

It has a lot of safety checks built into the runtime, which make it a little slower.

x is and int between 1 and 200.

x gets asigned out of that range, exception is thrown. So we weren't manually checking everything.

Also I think it was mandated as a language for US government contracts, for a variety of reasons.

Post reply on HN