This one bit me today

Scott Amspoker scott at bbxsda.UUCP
Tue Oct 10 09:02:24 AEST 1989


In article <4147 at ncsuvx.ncsu.edu> jnh at ecemwl.UUCP (Joseph N. Hall) writes:
>
>I certainly hope "Consumer Reports" never rates programming languages ...

Allow me :-)

IN THIS ISSUE:

   8 BUTTER SUBSTITUTES
   10 VCRS
   AN EXCITING NEW PROGRAMMING LANGUAGE
   SURVEY ON ORAL SEX AND AIDS TRANSMISSION

...

Well, there was FORTRAN, COBOL, and PL/1.  Now there is a new kid on the
block, 'C'.  How does 'C' measure up to it's bigger brothers?

We had our staffers develop small, medium, and large scale applications
using C.  The staffers were pick randomly at CU headquarters.  Some of
them knew programming and some didn't.  The applications were chosen
because of their mix of calculations, file management, and user interface.
The actual programs they had to write consisted of:

   small - compute PI to 100,000 places
   medium - realtime MIDI application with interrupt handling
   large - desktop publishing system

A special development system was set up that kept track of the number
of compiles, mean time between compiles, and number of compile errors.
The staffers were kept in a room with precisely controlled temperature,
lighting, and soft music.

We were greatly disappointed in C as its disadvantages almost immeadiately
surfaced.  First of all, you have to declare variables before they may
be used.  Also, most important, C has reserved words.  These are the
same major flaws found in Pascal which we rated unacceptable in our
March 1987 issue.  Also, there were simply *too many operators* (and
surprisingly, no exponentiation!)

Some of our staffers thought that the heavy use of curley braces '{}'
was awkward since they required the shift key.  Furthermore, there
is a basic attitude among our staffers that any language that provides
pointer types is trying to hide *something*.

It was hard to tell where C ended and subroutine libraries began.

However, C isn't all bad.  It's fast.  Almost too fast - like a car
without brakes.  Part of this speed is because of the complete lack
of runtime checking of anything.  Some of our staffers actually liked
that but our more mature staffers didn't.  Also, C is normally typed
in at a CRT and not punched on cards - a big plus!  Finally, it is
recursive.

All in all, we believe C will become more of a "cult" language and
never seriously accepted into the mainstream.  While it is
fast and small we felt that the lack of string handling, exponentiation,
and other omissions are too important to overlook.  (A multi-level
break would have been a nice touch to eliminate goto's).  We do not
recommend C.

DEFECTS:

Our factory sample contain several defects.  The most serious were:

   Generated bad code for returning a structure from a far procedure.

   #include was limited to 64 levels.

   Bit fields assigned from left-to-right instead of right-to-left.


-- 
Scott Amspoker
Basis International, Albuquerque, NM
(505) 345-5232
unmvax.cs.unm.edu!bbx!bbxsda!scott



More information about the Comp.lang.c mailing list