Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site opus.UUCP Path: utzoo!watmath!clyde!floyd!harpo!seismo!ut-sally!opus!rcd From: rcd@opus.UUCP Newsgroups: net.lang.c Subject: Re: C: is it just another descendant of ALGOL? Message-ID: <225@opus.UUCP> Date: Wed, 14-Mar-84 02:24:50 EST Article-I.D.: opus.225 Posted: Wed Mar 14 02:24:50 1984 Date-Received: Thu, 15-Mar-84 00:27:24 EST References: <2151@ecsvax.UUCP> Organization: NBI, Boulder Lines: 29 <> > ...I must say I *do* think C is > different in kind from other ALGOL-descended languages... C isn't really an ALGOL-descended language. Its grandfather, BCPL, is an interesting language, quite unique in a number of respects. (Consider that an untyped language won't let you have polymorphic operators...) Among other things, BCPL is untyped, which explains the fact that C may look as if its sense of data typing is evolving. In order to understand C, it is useful (tho not necessarily sufficient) to understand BCPL. Literature discussing BCPL is a little hard to find - I'm guessing that it was something developed by/for people who DO software rather than TALK about it. But look under Martin Richards, probably in the late-60's/early-70's time frame. One of the interesting aspects of BCPL is that the language and its compiler were both designed to be portable - it was one of the earliest reasonably-successful experiments in a portable SIL. This puts the following comment in a curious light: > C was created with a > specific machine model in mind, and the intention that ON MACHINES CONFORMING > TO THAT MODEL all language constructs would be extremely efficient to > implement at the machine level... Also compare, from the beloved blue&white C book (Kernighan & Ritchie) the statement that C "...is not tied to any particular hardware or system..." It certainly helps to have a byte-addressable machine, of course, though even that isn't necessary. I think that C deserves a lot of credit for generality... -- {hao,ucbvax,allegra}!nbires!rcd