comp.lang.ada
 help / color / mirror / Atom feed
From: "Dan'l Miller" <optikos@verizon.net>
Subject: Re: Teaching C/C++ from Ada perspective?
Date: Sun, 8 Jul 2018 10:36:25 -0700 (PDT)
Date: 2018-07-08T10:36:25-07:00	[thread overview]
Message-ID: <1ab5db5c-7892-40a8-ae36-ca1ec1168768@googlegroups.com> (raw)
In-Reply-To: <2f5399b4-518b-4a2e-9941-2ae267d51309@googlegroups.com>

On Saturday, July 7, 2018 at 3:43:44 PM UTC-5, Maciej Sobczak wrote:
> > The -man series is clearly language agnostic
> 
> If it's the set of requirements for the Ada language, then obviously it is not agnostic.
> 
> > because no less than 6 quite-different programming languages
> 
> Nope. All of them wanted to become Ada.

By definition of ‘pre-disqualified’, the pre-disqualified Tartan and pre-disqualified -75+15PL/I did not want to become Ada.

There was a 7th language derived from Ironman and Steelman.  The CHILL language ISO/IEC 9496 and ITU-T Z.200 was the European telecom industry's incensed retort to being uninvited to the party.  CHILL is a 3rd language that was designed with the overt knowledge that it would never be Ada.  And unlike Tartan and -75+15PL/I, CHILL became an ITU-T, ISO, and IEC standard, last revised in 1999, and part of GCC all the way through the GCC 2.X era.  And analogous to the Ada9X project, CHILL was revised during the first half of the 1990s to be OO.  And if you have ever made a telephone call in Europe (and much of the rest of the world outside of North America or Japan), then it is highly likely that CHILL's wise software engineering code made that telephone call possible.

7 languages—6 of which are •very• not*-Ada—overtly designed from scratch (CHILL, Ada, Red, Blue, Tartan) or modified (-75+15PL/I, Yellow) don't clearly demonstrate the language agnosticity of Ironman/Steelman, eh?  2 quite different languages (Ada versus CHILL) became ISO/IEC language standards.  CHILL (from Alcatel & Siemens) begat Erlang as a reaction from Ericsson; nearly all the not-Ada-esque/not-Algol-esque/not-C-esque portions of Erlang are directly mimicked from CHILL—and Erlang is gaining popularity today.

* CHILL looks more like PL/I and COBOL.

> Nope. All of them wanted to become Ada.

Btw, Maciej, I've got news for you.  It was common knowledge among those of us** advocating C++ in the latter half of the 1980s that C++ wanted to become the Ada-esque Ada killer as much as CHILL did.  AT&T (North American telecom) and the European PTT equipment manufacturers felt quite spurned for being uninvited to the language competition.  That is a huge part of the reason that AT&T, Alcatel, and Siemens, (and Ericsson, counting Erlang) poured so much effort into designing C with Classes, C++, and CHILL, (and Erlang) instead of adopting Ada for their embedded systems.  (Telecom equipment has always been the 2nd largest realtime embedded software footprint on the planet behind the military.)  If there is one single root-cause reason that Ada failed to launch on the launchpad from, say, 1985 to 1993, it was this spurned-detest of Ada in telecom, not because of what was in or not in Ada, but because telecom was excluded from the selection process.

** I wrote my first C++ programs in 1988 on an Oregon compiler first and a few months later when I first got my hands on a cfront from AT&T on a 3B2.

By C++ and CHILL wanting to very much be the Ada-esque Ada killers from telecom, C++ and CHILL wanted to be Ada even more than Red, Yellow, Blue, Tartan, or -75+15PL/I did.  Your logic is flawed and naïve, •as if• you are unaware of all this history.

(Is that that “as if” rule that you were talking about?)

> > C++ was in a legally-protected zoo of sorts, not subjected to this natural selection
> 
> And this is where I object. The "natural selection" does not happen by committee. The closest industrial
> analogy to "natural selection" is the tool market, where users are ultimate judges. And this is the arena
> where your historical and sentimental links are both impressive and useless.
>
> Think about more recent programming languages, which do not have. For some reason most of them try
> heavily to resemble C++, but you cannot blame AT&T for this any longer. Now it's somebody else's fault,
> but this is how "natural selection" works.

Wow.  What an incredibly jaw-dropping disregard of history.  It is •as if• you didn't live through the 1980s or something.  It is •as if• you didn't live in the USA or something during the cut-throat viciousness of The Unix Wars at the end of The Cold War, or something.  ‘The industrial commercial marketplace’ as some sort of paragon of pure-as-driven-snow Adam Smith unfettered capitalism didn't decide in any way whatsoever.  Government mandates in the USA's federal government decided by fiat.  Allow me to explain how the my-fiat-is-bigger-than-your-fiat scheme worked:

https://www.cbronline.com/news/posix_comes_up_to_starting_gate_as_the_vendor_independent_unix_standard

https://gcn.com/Articles/1995/08/22/NT-is-Posixcompliant-GSBCA-decides-ruling-raises-questions.aspx

A sign that hung in many Bell-System facilities in 1983 read:
“There are two giant entities at work in our country, and they both have an amazing influence on our daily lives ... one has given us radar, sonar, stereo, teletype, the transistor, hearing aids, artificial larynxes, talking movies, and the telephone. The other has given us the Civil War, the Spanish–American War, the First World War, the Second World War, the Korean War, the Vietnam War, double-digit inflation, double-digit unemployment, the Great Depression, the gasoline crisis, and the Watergate fiasco. Guess which one is now trying to tell the other one how to run its business?”

Hence, given their hurt feelings, turn-about was viewed as fair play:
AT&T was so incensed by the federal government's
A) anti-AT&T activities in the 1956 breakup,
B) the HOLWG spurning,
C) the 1984 breakup, and
D) perhaps a few other things (such as the 1968 perceived Carterfone abandonment of Theodore Roosevelt's 1906 Universal Service mandate with AT&T's then-mantra “One policy.  One System.  Universal Service.”)
that AT&T sought a form of swinging the pendulum the other way:  the federal government was to mandate that only AT&T-influenced UNIX-esque computers could be purchased for computer-room usage, putting DEC's VMS, IBM's mainframes, Prime's PRIMOS, Honeywell's OSes including impressively-B2-Orange-Book-compliant MULTICS, and so forth at drastic disadvantage or elimination when selling to the USA's federal government—and AT&T-world at decisively favorable advantage in the federal government's 20% of the USA's GDP.

Because of the artificially-fomented POSIX/UNIX wars from approximately mid-1980s to the mid-1990s, nearly everyone in the federal government obeyed the AT&T-biased POSIX mandate, and in turn nearly everyone wanted to develop UNIX/POSIX software in the AT&T languages so that their software was as close in philosophy to AT&T's/UNIX's/POSIX's as possible.  In effect:

a) the GSA's procurement-requirements mandate-fiat for nearly-100% POSIX server purchases by the 20% of the USA's GDP that is the federal government (including DoD & DoE**)

thoroughly eclipsed

b) the DoD's mandate-fiat for nearly-100% Ada development in national-security contracts.  It was a 2-way tug-of-war between NIST/DoCommerce versus DoD/DoE.

** In effect the backers of C/C++/POSIX said:  haha, DoD/DoE, even if you demand Ada as a thin veneer on top, we demand C/C++/POSIX products underneath at the operating system and computer-procurement level.  Checkmate:  former-pawn takes Queen Ada.

In effect (and actually quite surprisingly!), AT&T-world's government-lobbying planet was bigger than DoD-world's  government-lobbying planet in the competition of ••who was eclipsing whom••, and who was more capable in utilizing their lobbying levers of power within the federal government to pull off the bigger more-impervious of the 2 competing federal-government mandates-fiats with long tentacles that still have harsh lingering overshadowing effects even today 30 years later.  AT&T-world's influence over Commerce/NIST won in every lasting measurable way in the levers of power via government influence; DoD's mandate for Ada faded into history as it shriveled like a dying*** plant in permanent never-ending eclipse from planet-POSIX/C/C++ for the federal-government's out-sized dominance of 20% of the USA's GDP.

*** Fortunately, some people are keeping Ada alive today via UV-grow-lamps, as C++ bakes in the scorching heat of being on the surface the POSIX/C/Unix planet that is still overshadowing us all.  C++ wasn't •designed•‡ for that kind of exposure, as witnessed by the severe-tar-&-feathering lambasting that C++ is currently getting over there‡‡ at Slashdot:

The ++ has been removed in the URL; don't let the URL fool you.
https://developers.slashdot.org/story/18/07/07/0342201/is-c-a-really-terrible-language

‡ C++ was accreted, not designed.

‡‡ I promise that I had absolutely nothing to do with any of that over at Slashdot, other than the sole Anonymous-Coward reply that is ”Ada2012” in response to someone's question of:  other than C++ what good language is there for embedded systems programming.

> And, BTW, we were supposed to help the OP, who was asked to teach C++.

Oh, we are helping him very very much.  We are showing him in its full glory what a mess C++ is.  Any good teacher of C++ looking at all the replies in this thread would say, “Gee, I really must help my students avoid those morasses in C++.”  No one will ever know where the morasses are via polly-anna loving praise of C++.  No, the only way to know where the morasses in C++ are—the only way to know precisely where C++ buried the bodies—is to examine its dirty laundry, clothing-item by clothing-item.  Then, get one of the 9 varieties of Carbona out to remove just that kind of stain from each portion of C++.


  reply	other threads:[~2018-07-08 17:36 UTC|newest]

Thread overview: 117+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-06-30 18:04 Teaching C/C++ from Ada perspective? kouaoua16
2018-06-30 18:15 ` Luke A. Guest
2018-06-30 19:27   ` Dan'l Miller
2018-06-30 19:07 ` Dan'l Miller
2018-07-01 16:12 ` kouaoua16
2018-07-01 17:08   ` Luke A. Guest
2018-07-01 19:19     ` Dan'l Miller
2018-07-02  6:12       ` Maciej Sobczak
2018-07-01 20:52 ` Maciej Sobczak
2018-07-01 21:35   ` Dan'l Miller
2018-07-02  5:56     ` Maciej Sobczak
2018-07-02  9:58       ` Marius Amado-Alves
2018-07-02 11:03         ` Maciej Sobczak
2018-07-02 13:52           ` Marius Amado-Alves
2018-07-04 12:10             ` Dan'l Miller
2018-07-02 20:14         ` Paul Rubin
2018-07-03  9:48           ` Marius Amado-Alves
2018-07-04  2:52             ` Paul Rubin
2018-07-02 18:52       ` Dan'l Miller
2018-07-03  8:00         ` Maciej Sobczak
2018-07-03 12:40           ` Dan'l Miller
2018-07-03 20:54             ` Maciej Sobczak
2018-07-04  3:10               ` Dan'l Miller
2018-07-04  7:59                 ` Maciej Sobczak
2018-07-04  8:37                   ` Marius Amado-Alves
2018-07-04 12:22                     ` Maciej Sobczak
2018-07-04 14:13                       ` Simon Wright
2018-07-04 14:56                         ` Maciej Sobczak
2018-07-04 15:52                           ` Dmitry A. Kazakov
2018-07-04 16:24                             ` Alejandro R. Mosteo
2018-07-04 20:00                               ` Jeffrey R. Carter
2018-07-05 18:35                                 ` Randy Brukardt
2018-07-05 19:39                                   ` Jeffrey R. Carter
2018-07-06 18:45                                     ` Randy Brukardt
2018-07-04 20:13                             ` Maciej Sobczak
2018-07-04 21:09                               ` Dmitry A. Kazakov
2018-07-05  5:49                                 ` Maciej Sobczak
2018-07-05  7:37                                   ` Dmitry A. Kazakov
2018-07-05 13:14                                     ` Maciej Sobczak
2018-07-05 15:18                                       ` Dmitry A. Kazakov
2018-07-05 19:16                                       ` Randy Brukardt
2018-07-07 15:09                                         ` Lucretia
2018-07-05 19:12                                     ` Randy Brukardt
2018-07-05 20:10                                       ` Maciej Sobczak
2018-07-06 19:01                                         ` Randy Brukardt
2018-07-06 19:35                                           ` Dmitry A. Kazakov
2018-07-05  7:43                                   ` Alejandro R. Mosteo
2018-07-05 18:53                                   ` Randy Brukardt
2018-07-05 19:06                                     ` Dan'l Miller
2018-07-06 18:47                                       ` Randy Brukardt
2018-07-05 20:12                                     ` Maciej Sobczak
2018-07-06 18:51                                       ` Randy Brukardt
2018-07-06 19:43                                         ` Dmitry A. Kazakov
2018-07-06 20:18                                           ` Dan'l Miller
2018-07-07  8:39                                             ` Dmitry A. Kazakov
2018-07-07 11:53                                           ` Björn Lundin
2018-07-06 20:22                                         ` Maciej Sobczak
2018-07-06 23:26                                           ` Paul Rubin
2018-07-07  6:17                                             ` J-P. Rosen
2018-07-07  6:37                                               ` Micronian Coder
2018-07-07  8:48                                                 ` Privacy and child packages (Was: Teaching C/C++ from Ada perspective?) Jacob Sparre Andersen
2018-07-07 20:19                                               ` Teaching C/C++ from Ada perspective? Maciej Sobczak
2018-07-08 15:25                                           ` Simon Wright
2018-07-08 20:00                                             ` Maciej Sobczak
2018-07-09  9:04                                               ` Alejandro R. Mosteo
2018-07-05 15:30                               ` Dan'l Miller
2018-07-05 20:38                                 ` Maciej Sobczak
2018-07-05 21:05                                   ` Dan'l Miller
2018-07-05 18:47                               ` Randy Brukardt
2018-07-04 16:01                           ` Simon Wright
2018-07-04 17:12                           ` G. B.
2018-07-04 20:18                             ` Maciej Sobczak
2018-07-04 21:03                               ` G.B.
2018-07-04 17:21                           ` Dan'l Miller
2018-07-04 20:36                             ` Maciej Sobczak
2018-07-04 22:44                               ` Dan'l Miller
2018-07-05  2:01                                 ` Luke A. Guest
2018-07-05  5:03                                   ` Dan'l Miller
2018-07-05  5:58                                 ` Maciej Sobczak
2018-07-05 19:25                                   ` Randy Brukardt
2018-07-05 19:22                                 ` Randy Brukardt
2018-07-05 18:31                       ` Randy Brukardt
2018-07-06  3:32           ` Dan'l Miller
2018-07-06 12:05             ` Dan'l Miller
2018-07-06 20:42             ` Maciej Sobczak
2018-07-06 21:32               ` Dan'l Miller
2018-07-07 20:43                 ` Maciej Sobczak
2018-07-08 17:36                   ` Dan'l Miller [this message]
2018-07-08 18:39                     ` Bill Findlay
2018-07-08 19:28                       ` Dan'l Miller
2018-07-09 12:34                         ` Bill Findlay
2018-07-09 15:19                           ` Dan'l Miller
2018-07-09 19:34                             ` Bill Findlay
2018-07-09 22:03                               ` Dan'l Miller
2018-07-09 22:35                                 ` Bill Findlay
2018-07-10  1:56                                   ` Lucretia
2018-07-10 23:14                         ` Randy Brukardt
2018-07-11 14:05                           ` Dan'l Miller
2018-07-11 20:20                             ` Randy Brukardt
2018-07-08 20:43                     ` Maciej Sobczak
2018-07-08 23:17                       ` Dan'l Miller
2018-07-09  6:13                         ` Maciej Sobczak
2018-07-09 16:35                           ` Dan'l Miller
2018-07-10 23:20                       ` Randy Brukardt
2018-07-10 23:51                         ` Britt
2018-07-02 17:10   ` kouaoua16
2018-07-02 17:28     ` Dennis Lee Bieber
2018-07-02 18:22     ` Maciej Sobczak
2018-07-02 20:27     ` G.B.
2018-07-02  0:11 ` Paul Rubin
2018-07-02 14:26 ` kouaoua16
2018-07-02 19:57 ` G.B.
2018-07-02 20:17   ` Dan'l Miller
2018-07-03  9:56 ` Brian Drummond
2018-07-04 12:18 ` Olivier Henley
2018-07-04 14:17   ` kouaoua16
2018-07-12  5:38 ` robin.vowels
replies disabled

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox