Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site dartvax.UUCP Path: utzoo!linus!decvax!dartvax!andyb From: andyb@dartvax.UUCP (Andy Behrens) Newsgroups: net.lang Subject: Re: Language popularity Message-ID: <521@dartvax.UUCP> Date: Fri, 16-Dec-83 21:24:03 EST Article-I.D.: dartvax.521 Posted: Fri Dec 16 21:24:03 1983 Date-Received: Sat, 17-Dec-83 08:33:44 EST References: <6785@arizona.UUCP> Organization: Dartmouth College Lines: 35 > However, if a language is going to be successful, > it must fill a need that isn't met by available languages.... > > Of the languages that are in widespread use today, how many of them were > drastically different from other languages available at the time of their > appearance? Think about FORTRAN, Lisp, COBOL, APL, C; ... Then think about Basic and Pascal, both popular languages, and more widely used than Lisp or APL. For a long time after its introduction, Basic had poor text-string handling and clumsy subroutines. Some early implementations allowed strings, but only allowed them to be used as indivisible pieces; there was no way to concatenate them or pull out substrings. Other implementations allowed substrings, but used array notation for them, so that there was no way to have an array of strings. Even Dartmouth's Basic (as late as 1968) allowed access to individual characters of a string only through a rather contrived "change" command, which converted strings to numeric arrays. And yet by 1968, Basic was already in widespread use. What did Basic have that its cousin Fortran didn't? I/O was simpler, since format statements weren't needed. Any arithmetic expression at all could be used as a subscript. And it was interactive. (But IBM offered Quiktran, an interactive implementation of Fortran, and that certainly never caught on). Similarly, ask yourself what Pascal had that Algol-W didn't. A few more data types, better declarations.... If you want your language to succeed, let it be innovative. But don't forget the importance of compiler that is cheap enough OR small enough to run on many machines. -- Andy Behrens decvax!dartvax!andyb