Re: What makes a language popular?

kurt@tc.fluke.COM (Kurt Guntheroth)
30 Jul 87 16:12:38 GMT

          From comp.compilers

Related articles
Re: What makes a language popular? kurt@tc.fluke.COM (1987-07-30)
Re: What makes a language popular? harvard!rutgers!petsd!cjh (1987-08-03)
Re: What makes a language popular? harvard!seismo!mcvax!!dcw (Duncan C White) (1987-08-06)
Re: What makes a language popular? msf@amelia.UUCP (1987-08-11)
Re: What makes a language popular?!eugene@ames.UUCP (Eugene Miya N.) (1987-08-24)
| List of all articles for this month |

From: kurt@tc.fluke.COM (Kurt Guntheroth)
Newsgroups: comp.compilers
Date: 30 Jul 87 16:12:38 GMT
References: <331@hubcap.UUCP> <627@ima.ISC.COM>
Original-sender: news@tc.fluke.COM
Organization: John Fluke Mfg. Co., Inc., Everett, WA

I claim that what makes a language popular (other than being useful) is an
accessible standard reference work and a sample implementation of the
compiler. Not all languages have both of these, but virtually every
popular language has at least one. I am not old enough to be directly
familiar with initial versions of FORTRAN or COBOL, but there are some
modern examples.

Pascal: The universally recognized standard reference is Jensen and Wirth.
This document, while by no means perfect, is a relatively complete and
concise spec for Pascal. As if that wasn't enough, there is a p-code
compiler for Pascal that practically everybody who goes to college for a
CSci degree will see eventually.

Modula-2: Since everybody latched onto M-2 as the "new pascal" there are an
infinite number of textbooks on Modula-2. Wirth wrote a reference manual,
but is is less widely recognized. There are also a couple of standard
compilers, although they also are less widely distributed.

C: Who can forget K & R, a book so well known in C circles that even the
author's names have been contracted. Both the Ritchie C compiler and PCC
are widely available for scrutiny, and at least PCC is arguably a high
quality production compiler. C has the additional attribute of being a good
match to the machine architectures of most microprocessors. Thus, even
those people who had no access to one of the prototype C compiler sources
had little trouble in coding a compiler from scratch. (BDS C, Whitesmith's
C, Lattice C, and an unknown additional number of commercial C compilers.)

Of course, just having a reference and prototype compiler is not a guarantee
of success. You also have to get lucky. I have a nice book by Per Brinch
Hansen on a language called Edison. Nice Pascal-like language, and there's
a complete listing of the compiler in the book. Nevertheless, Edison just
never caught on. I am sure the literature is virtually carpeted with such
derelict remains.

There is also BASIC, which survives in spite of having absolutely no
standard text, and no standard implementation. The reason BASIC thrives in
contrary fashion is that, in the absense of any standard, it is possible to
call any language BASIC. Just make sure it contains the keywords IF, GOTO,
and GOSUB, and permits at least optional line labels.
[Evidently you're talking about a necessary but not sufficient condition.
Who uses Edison, after all? I suspect the other condition is that the
language be better for some useful set of tasks than the other popular ones.
In any event, this is getting sort of far afield from the topic of compilers.
It might be interesting to compare real implementation experience for some
languages. -John]

Post a followup to this message

Return to the comp.compilers page.
Search the comp.compilers archives again.