Re: bool or BOOL in MFC projects

Tech-Archive recommends: Repair Windows Errors & Optimize Windows Performance



The problem in DoD was that they went out and got computer brand X, often a custom
architecture, then programmed it in language Y. The compiler was rarely relliable,
produced mediocre code, didn't implement most of the syntax of the language it purported
to support, and there was no motivation to fix it, because it was only used for this one
computer. Remember, this was in the days before C, before GNU, etc., so every
architecture had its own unique compiler. Many were cross-compilers, written in assembly
code, and ran on machines that often had to be kept alive only because they had to run the
compiler. Then you take languages like Jovial J-73, which was an early attempt to get an
Algol-like language, but represented state-of-the-art 1960 compiler technology (in 1973,
obviously), but there were probably several hundred languages extant in DoD at the time.
COBOL was unsuitable for most applications dealing with anything from weapons to space
missions (but great for figuring out how much peanut butter to send to Alaska this week,
or how to pay a million soldiers on time). FORTRAN was great for doing computations of
trajectories and orbits, but not really suited for realtime control. And the compilers
were mostly junk. The goal was to create a language primarily oriented to
mission-critical command-and-control applications, often embedded in tiny machines, and
have a single, uniform language and a suite of high-quality compilers. The language had
to support machines of widely varying capabilities, so it had to allow the programmer to
specify things like the precision required for calculations (so the compiler could detect
if the target architecture would execute the program correctly, or provide suitable
runtimes so it could). The result was the Ada project, that went through several
iterations, "strawman", "woodman", "tinman" and "steelman" drafts) culminating in a set of
four competing language proposals, which were designated by colors so there would be no
bias whatsoever by the evaluators (and as soon as you read "yellow" you knew it was SRI,
and "blue" I forget but I knew it at the time, "red" was Intermetrics, and anyone who knew
John Nestor knew he was the chief architect because of its mathematical elegance and
formal rigor, and "green" was Honeywell-Bull and Jean Ichbiah, because it was a "European
Academic" language. John's language was better, but Jean Ichbiah was a better salesman.

See, for example,

Mary Shaw, Guy T. Almes, Joseph M. Newcomer, Brian K. Reid and Wm. A. Wulf, "A Comparison
of Programming Languages for Software Engineering," Software--Practice and Experience,
Vol. 11, 1980, 1-52. Reprinted in abbreviated form in Comparing and Assessing Programming
Languages, editedcby Alan Feuer and Narain Gehani, Prentice-Hall, 1984, pp 197-225.

We based our evaluation on the Steelman spec.
joe
On Wed, 19 Dec 2007 20:02:47 +0100, "Giovanni Dicanio" <giovanni.dicanio@xxxxxxxxxxx>
wrote:


"Joseph M. Newcomer" <newcomer@xxxxxxxxxxxx> ha scritto nel messaggio
news:agbim35irr2imd33ja34qlmpufb8ktfcgo@xxxxxxxxxx
On the other hand, in Ada, return type is part of the overload resolution.

This generates an AMAZING nightmare of maintenance, because if you have
[...]

Having seen this disaster (which was pretty much known by 1979 or so) the
C++ people
sensibly decided to not include return type in overload resolution.

Thanks for your elaboration.
That does make sense.

BTW: Was ADA designed for military applications? Why does David cite ADA and
Department of Defense?
Is US Fighter Jets software developed in ADA?

Thanks,
Giovanni

Joseph M. Newcomer [MVP]
email: newcomer@xxxxxxxxxxxx
Web: http://www.flounder.com
MVP Tips: http://www.flounder.com/mvp_tips.htm
.



Relevant Pages

  • C language now truly universal
    ... C language now truly universal ... a C compiler for z/VSE (an ... IBM mainframe operating system), and would like to ... Has a documented programming API. ...
    (comp.lang.c)
  • Re: [EGN] Numerical Accuracy
    ... The advice worked because in fact the Microsoft compiler had a bug. ... The capabilities of the optimizer are not so ... The language standard itself says ... of "programming" as a nonprofession. ...
    (comp.programming)
  • Re: Learning C++?
    ... >> abide such rules or there are people who don't know the rules. ... > programming is excellent, and its object-oriented support is quite ... code, like Java or Ada or what else, but no language can prevent the ... This is also something the compiler should be ...
    (alt.comp.lang.learn.c-cpp)
  • Re: Beyond CL?
    ... around in the internals of the language. ... as the programmable programming language; ... Eventually a bank of many users' optimizations could be ... approach the fabled "sufficiently smart compiler". ...
    (comp.lang.lisp)
  • Re: Error message about my user defined type
    ... write a compiler that allow a true VB7 to run on the .Net platform ... > COM programming all day long. ... > wide available to any programming language who wants to use them. ... > other than using the CLR and the MSIL. ...
    (microsoft.public.vb.general.discussion)