[comp.software-eng] What makes a good OOPL?

rick@tetrauk.UUCP (Rick Jones) (09/17/90)

In article <614@janus.Quotron.com> cws@janus.Quotron.com (Craig W. Shaver) writes:
> kelpie@tc.fluke.COM (Tony Garland) writes:
>> In article ...
> ...
>>     Languages such as c++ are examples where this most certainly will not 
>>     be true.  Try taking a "cheap programmer" and getting something
>>     useful out of c++.  Experience has shown that with such languages
>>     "the strong get going and the weak get lost".
>
>Since first learning c++ I have felt that it is not a good answer to the
>need for delivering quality software in a timely fashion.  You must have
>very well qualified (and highly paid) programmers to at least develop the
>basic tool sets.  c++ appears to me to have the potential for introducing
>more problems than it alleviates.  If you follow the various c++ news groups
>you will find the participants arguing about complex and arcane facits of
>the language.  I think they have lost sight of the real goal -- developing
>software for end users.  Smalltalk is much closer to what is needed.  The
>c++ people need to rediscover the reasons for using an object oriented 
>approach.

Perfectly said!

It's nice to know I'm not alone in my thoughts.  In trying to decide on a "new"
language to use, and thinking OO is the way to go, I of course looked into C++
among others.  Having found out what it is, I have strongly resisted the
apparently Lemming-like bandwagon it has created.  This is actually quite
difficult to justify to directors who, quite naturally, want to be seen to be
adopting "standards", and C++'s exposure makes it look very like a standard.

The trouble is, the term "object-oriented" can mean anything, and so ultimately
nothing.  The fact that a language is object oriented does not make it
immediately comparable to every other OOPL.  On that basis,  C, Basic, Fortran,
and Cobol must all be the same;  they're all procedural, aren't they?

I don't agree that Smalltalk is the only possibility, though.  I am putting a
lot of work into Eiffel, and it is proving a very good language, emphasising
what you _should_ be thinking about.  The more I read, the more I feel that
Objective-C deserves a wider audience (I probably haven't given it a fair
enough chance myself);  as a way of building a Smalltalk-inspired structure
using C modules it appears to have much to recommend it.

I've programmed in C for years, and I think it is an excellent language.  But
now that I want to use OO methods, or more specifically class-based methods, I
can't think of anything I would want to use _less_ than C++.  The paradigms are
just not compatible.  C++ has its place, but if it becomes seen as the
definitive model of an object-oriented language it could become the same sort
of obstacle to the advancement of software engineering that Basic was.

(This is starting to look like alt.flame.c++ :-)
It may be a contentious issue, but let's not have a Holy War - this newsgroup
can do better than that!

-- 
Rick Jones			Nothing ever happens, nothing happens at all
Tetra Ltd.			The needle returns to the start of the song
Maidenhead, Berks, UK		And we all sing along like before
rick@tetrauk.uucp						- Del Amitri

jjacobs@well.sf.ca.us (Jeffrey Jacobs) (09/20/90)

C++ is what you would expect if you took a C guru and said "come up with
an object oriented extension to C".

Objective-C is what you would expect if you took an OO guru and said "come
up with an object oriented extension to C".

The C guru is dragged kicking and screaming into a paradigm totally
contradictory to C.

Ditto the OO guru...

Jeffrey M. Jacobs
ConsArt Systems Inc, Technology & Management Consulting
P.O. Box 3016, Manhattan Beach, CA 90266
voice: (213)376-3802, E-Mail: 76702.456@COMPUSERVE.COM