C++ is not an object-oriented language

Richard A. O'Keefe ok at quintus.UUCP
Wed Mar 2 16:53:40 AEST 1988


In article <...>, tub!cabo (Carsten Bormann @ Technical University of Berlin)
writes:
> In article <694 at cresswell.quintus.UUCP> ok at quintus.UUCP
> (Richard A. O'Keefe) writes:
> >  C++ is the Fortran 8X of object-oriented languages.

> What a piece of nonsense.
> For the uninitiated: C++ is not an ``object-oriented language''.

I'm ever so sorry, the correct term, taken from Stroustrup's book,
is not "object-oriented".  I was quite wrong.  It is "object-BASED".
Stroustrup says quite explicitly on the first page of the preface
that 'the key concept in C++ is "class".'
          ***	(my emphasis)
If that doesn't entitle it to the description "object-oriented language",
then Simula, Clascal, and various others aren't object-oriented either.

When I said that C++ is the Fortran 8X of object-oriented languages,
I meant that it consists of a lot of admirable features bolted on top
of an earlier language which was intended for a different style of
programming, and is not well suited to the new approach.  Fortran 8X
is just such an unhappy grafting of unlike languages (contra Carsten
Bormann, Fortran 77 is NOT), which makes the comparison apt.
Both Fortran 8X and C++ have as an explicit design constraint the inclusion
of the older language as a subset (Fortran 77, again contra Bormann, does
not have Fortran 66 as a subset).

As for "comparing the position of C++ in the development of the C
language to ... Fortran-77" as Bormann recommends, we can't do that,
because we know what comes after Fortran-77 (namely 8X), and whatever
will come after C++ hasn't done so yet.

Getting back to the original topic, which was conformant array
parameters, there seem to be three groups:
1. a small group of people saying "I've been wanting something like that"
2. a larger group of people saying "you don't need it"
3. an enormous group of people saying nothing at all.

The question which occurs to me is this:  how many people who have tried
to write moderate-to-large numerical applications in C would belong to
the second group if they were to speak up?

The argument that it is too late to get such a feature into this version
of ANSI C, and that its prior implementation in other languages doesn't
count as "prior art" _for C_ has considerable force.  If that's so, it's
so.  But what do the people who have experienced the need for some such
feature say?  How many people who have tried to translate one of the
EISPACK or LINPACK routines into C dislike the conformant array parameter
proposal?  



More information about the Comp.lang.c mailing list