What is Expressiveness in a Computer Language

Paul McGuire ptmcg at austin.rr._bogus_.com
Fri Jun 9 11:07:23 EDT 2006


<I've removed the massive cross-posting - I wouldn't presume this message is
all that interesting to folks in those other NG's, and I'm sure they'd be
saying, "who the heck is Paul McGuire, and who gives a @#*$! what he
thinks?">

"Joe Marshall" <eval.apply at gmail.com> wrote in message
news:1149863687.298352.45980 at h76g2000cwa.googlegroups.com...
>
> Expressiveness isn't necessarily a good thing.  For instance, in C, you
> can express the
> addresses of variables by using pointers.  You cannot express the same
> thing in Java, and
> most people consider this to be a good idea.
>

For those who remember the bad old days of COBOL, its claim to fame was that
it was more like English prose, with the intent of making a programming
language that was as readable as English, assuming that this was more
"expressive", and not requiring as much of a mental mapping exercise for
someone trying to "read" a program.  Even the language terminology itself
strived for this: statements were "sentences"; blocks were "paragraphs".
The sentence model may have ended up being one of COBOL's Achilles Heel's -
the placement of terminating periods for an IF THEN ELSE block was crucial
for disambiguating which ELSE went with which IF.  Unfortunately, periods
are one of the least visible printed characters, and an extra or missing
period could cause hours of extra debugging.

(Of course, at the time of COBOL's inception, the only primary languages to
compare with were assembly or FORTRAN-60, so this idea wasn't totally
unfounded.)

-- Paul





More information about the Python-list mailing list