Live data from Hacker News

Ada's dependent types, and its types as a whole

nytpu.com

141–146 of 146 posts

Re: Ada's dependent types, and its types as a whole

#141

Earlier quoted context omitted.

Yeah, to this day Ada, though a beautiful language, is a hard choice to make if you are concerned about certain targets. How would i get my program to compile to Android NDK? Even Swift has a better story with it's tooling. That's before we even talk about important stuff like libraries.

What are the options required to build an android gcc these days?

None since Google dropped GCC support, to anyone to do the work to make it work again.

Re: Ada's dependent types, and its types as a whole

#142
post #58

Earlier quoted context omitted.

There's some thick bindings to libtls that coincidentally happen to be written by the author of the article. There's also some OpenSSL bindings in Dmitry Kazakov's Simple Components and some in Ada Web Server by AdaCore, although they're pretty minimal. I think most applications of Ada are in embedded systems where you don't often want anything not in the standard library.

> I think most applications of Ada are in embedded systems... Ada is heavily used and carries a historical influence not only with embedded software space, but also with hardware space: VHDL is one of the two major hardware description languages used in ASIC design and FPGA implementations. (The other language is Verilog, based on - you guessed it - C, because of its popularity.) "Due to the Department of Defense req…

And databases on the software space, PL/SQL is heavily influenced by Ada, and pg/SQL is influenced by PL/SQL.

Re: Ada's dependent types, and its types as a whole

#143
post #81

Earlier quoted context omitted.

Rust actually has a bunch of oddities, to the point they test them [0]. [0] https://github.com/rust-lang/rust/blob/master/tests/ui/weird...

There's really only one sigil in there that isn't in C++ (the ' single-quote to name lifetimes and labels). And it's missing several ambiguities that plague older C++ grammars (i.e. is >> a greater than, or closing two template expressions?)

> (i.e. is >> a greater than, or closing two template expressions?)

I thought it was a pointer-dereference signifier(, or maybe an object-string-stream thingy)? If you mean C++, that is.

Re: Ada's dependent types, and its types as a whole

#144
post #95

Earlier quoted context omitted.

Do they all support the latest standards ?

A couple of them do, it isn't as if C and C++ FOSS compilers do as well. https://en.cppreference.com/ C++23 and C23 are the latest, and there are plenty of missing features from previous standards.

[deleted]

Re: Ada's dependent types, and its types as a whole

#145
post #55
post #48

Earlier quoted context omitted.

Context free curly braces in deeply nested code make me crazy. Labels to match up with the open symbol would be super helpful. My company’s style guide requires them on closing braces for namespaces.

Let me say that I do agree with you. However I’d add that this job could easily be done by the IDE. For a reason that I fail to grasp, after being around for multiple decades, IDEs are still incredibly bad at presenting useful information on the code. Apart from coloration and more recently type hints, there never have been any real innovation in just helping reading code structure. For some reason we are still stuck…

There is some great work being done here - I'm watching GToolkit advances, and while I don't fully buy the "moldable" hype, the UX of reading and writing code in GT feels like sci-fi sometimes.

Re: Ada's dependent types, and its types as a whole

#146
post #6

Ada is a criminally underrated tool that is unfortunately probably doomed to perpetually take the backseat to Rust despite Rust not solving all the problems Ada does. It's really sad that so many people's idea of safe programming is pretty strictly limited to memory safety, and that because Ada's baseline memory safety (SPARK is a different story) isn't as robust as Rust's borrow checker (in the sense that it doesn't…

Ada is a lot of fun and a great thing which is ruined (and blessed) by the fact there's de facto only one implementation and company behind it out in the open, and that is semi-closed / license PITA. There were improvements over the years by AdaCore, but I think this altogether hurt the adoption of such a great language in general - no other wide open implementation (like Rust has). If you want to see an extreme exam…

> no other wide open implementation (like Rust has)

So (at least according to pjmlp in https://news.ycombinator.com/item?id=42548360) Rust also only has a single "wide open" implementation.

Which means Rust doesn't have any "other" open implementation either, right?

Honestly, it's hard to know what of all the pro-Rust stuff one sees (here and elsewhere on-line) to take seriously, when its advocates constantly -- consciously or not -- exaggerate its virtues like this.

Post reply on HN