billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu (William Thomas Wolfe, 2847 ) (03/19/90)
From peter@ficc.uu.net (Peter da Silva):
> Classic Ada is no more Ada than C++ is C.
Then perhaps we should ask, "Exactly what IS the relationship
between C++ and C?" Let's see what recently-quoted author Bertrand
Meyer (author of _Object-Oriented Software Construction_) has to say:
...Quoting from Dr. Bjarne Stroustrup's ``The
C++ Programming Language'' (Addison-Wesley, 1986), which seems to be the
major reference on C++, page 22, lines 13-14: ``A C++ program typically
consists of many source files, each containing a sequence of declarations
of types, functions, variables, and constants''. This is very far from the
object-oriented model of software decomposition.
...One of my major objections to C++ stems from what that language has
rather than what it has not. Because C++ retains almost total
compatibility with C, it keeps all its low-level and dangerous features.
The design of C dates back to the late sixties and is obsolete
by modern software engineering standards.
Compatibility with C means that in C++ you still have pointers,
type casts, pointer arithmetic, function pointers, malloc, free, bizarre
operator precedence (the famous asterisk/parenthesis bugs),
weak type checking and so on.
I strongly disagree with this approach if the goal is to obtain software
quality. Take pointer arithmetic, for example. I would contend that you can
have quality software, or you can have pointer arithmetic; but you cannot
have both...
-- Bertrand Meyer
bertrand@eiffel.com
4 Jun 89 23:48:27 GMT
woody@eos.UUCP (Wayne Wood) (03/20/90)
In article <8432@hubcap.clemson.edu> billwolf%hazel.cs.clemson.edu@hubcap.clemson.edu writes: >compatibility with C, it keeps all its low-level and dangerous features. ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ C is like a loaded gun... it is only dangerous if the person using it does not know what they are doing. > > I strongly disagree with this approach if the goal is to obtain software >quality. Take pointer arithmetic, for example. I would contend that you can >have quality software, or you can have pointer arithmetic; but you cannot >have both... > give me a break! /*** woody **************************************************************** *** ...tongue tied and twisted, just an earth bound misfit, I... *** *** -- David Gilmour, Pink Floyd *** ****** woody@eos.arc.nasa.gov *** my opinions, like my mind, are my own ******/