Hacker News new | past | comments | ask | show | jobs | submit login

Two other beliefs about Ada:

1. It was designed by committee.

According to Wikipedia, it was designed by a small team at Honeywell Bull in France. A different connotation from the label 'committee'. What is the more accurate description? It may seem unimportant, but most programming languages are designed by one or two individuals and the word 'committee' is perceived negatively by many developers. (Aside: Julia was designed by multiple authors, but no-one says the language was designed by committee.)

2. Ada is a very large language. Not suitable for small projects.

This belief about the size of the language is true, but the question is: does it matter? I prefer small languages over larger ones, but I would be interested in the opinions of Ada developers. Is the language size irrelevant? And is Ada suitable for projects of any size?




While it is a large language, by now it is probably still smaller than C++20, C# 10, Common Lisp, Python 3.7 or GHC Haskell. :)


Thank you. That's busted a wrongly-held belief I've held about Ada - that it's size dwarfs other languages. Good to be corrected!


The language was naturally huge for 1983 hardware, and when compared to what 8 and 16 bit home computers were capable of.

Except we are now in 2021 and while Ada 2012 has naturally gained on features, since 1983 there are other ecosystems that grew beyond what is available in Ada, like my list above.


It's definitely significantly smaller than c++


To me the size of a language, and the size of a project, are totally different metrics. One could make the case that a large language provides developers with a more complete toolset suitable for smaller projects. My own experience with Ada may be different to that of others, however I've really seldom needed to use any non-core libraries to accomplish what I've needed to do. If you factor in the STL, I'm sure Ada would be far smaller than modern C++. Rust is no doubt smaller than Ada though, however I've never like the idea of needing to use third-party libraries for basic functionality that the language itself could provide.


You can absolutely use Ada as merely Pascal with a more pedantic type system. So very reasonably sized.

Importantly though, Ada is much more coherent (and less timtowtdi) than say C++ so as you do start bringing in more of the language into your codebase the "every one uses a different 10% of the language" problem of C++ isn't much of a problem for Ada.


It was designed by Jean Ichniah and his team, but he was the main designer.

You don't have to use the entirety of the language, you can use pragma Restrictions to get the compiler to ensure you don't use certain features. Some features don't even work for really tiny devices. Even tasking can be done one small systems, like a Z80, for example.


Regarding 2. You can write simple procedural programs with Ada, no need to use every last feature in a project.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: