2 ms·
Compiler validation is done by a third party so you cannot claim validation without really passing the testsuite. All compilers have bugs and releases happen (
by guerby 5y ago
Compiler validation is done by a third party so you cannot claim validation without really passing the testsuite.
All compilers have bugs and releases happen (at least for GCC which I know a bit more than others) with plenty of known open bugs.
Having a testsuite is of course a good thing, however if you take the top 20 programming languages in use, how many of them do have an accepted wide coverage publically available language test suite?
You said "half-finished product" but what about compiler for every other language than Ada of which most of them don't have a testsuite? How do buyer decide to use Intel C Compiler for example?
Remember all of this was in early 1980.
Having this testsuite was well ahead of its time as many things with Ada, what I'm trying to say is that it didn't play well at the time to help the language ecosystem grow.
- orhmeh09 5y agoThe purpose of Ada was not to sell compilers, nor to serve as a means for an acquihire, nor IPO, nor VC money. Passing the test suite is just about the most important thing an Ada compiler must do. The requirements of the language originate here: http://iment.com/maida/computer/requirements/strawman.htm#si.f.4 http://iment.com/maida/computer/requirements/strawman.htm#si... > Every user level aspect of the language will be formally specified. None will be left to the translator implementer, operating system or object machine. > There will be a traceable operational and/or technological requirement for each primitive data, operation and control structure in the language. > The language will not reveal minor differrences in computer architecture. > Machine dependent code cannot appear interspersed in-line in source language programs. > The semantics of the language will be determinable from the description. > Constructs of the language will have only one reasonable interpretation (i.e., physcologically unambiguous). > There will be an axiomatic definition of the language. It will be mathematically complete in the Turing sense. > The language will not sacrifice clarity for efficiency. > The language will not contain special features for rare cases. > All defaults in a program will be specifically provided in the language specification or in the program. > There will be a minimal number of defaults. … > Any translator for the language must implement the entire language (NO subsets). > Any translator for the language must implement only the language as specified (translator implementer may not expand the language specification). > Translator does not have to run on all object machines. Self-hosting is not required. These are the requirements Ada was designed to fulfill. If not passing the test suite is OK with you, you probably have no use for Ada and would be better served by another language. This is the best you can hope for in sensitive applications like aviation. I would feel better knowing the software flying me was extensively validated.