Path: utzoo!news-server.csri.toronto.edu!cs.utexas.edu!swrinde!elroy.jpl.nasa.gov!usc!bbn.com!mit-eddie!uw-beaver!milton!ogicse!pdxgate!parsely!percy!data!kend From: kend@data.UUCP (Ken Dickey) Newsgroups: comp.lang.misc Subject: Re^2: A comment on language wars. Message-ID: <456@data.UUCP> Date: 9 Mar 91 17:39:34 GMT References: <7HY9P4G@xds13.ferranti.com> Organization: Microcosm, Beaverton, OR Lines: 30 peter@ficc.ferranti.com (Peter da Silva) writes: >In article markf@zurich.ai.mit.edu writes: >> In article peter@ficc.ferranti.com (Peter da Silva) writes: >> In fact, I don't see how a language that isn't interpreted nor object >> oriented could be said to have first class functions. >> Although it is true that most LISP (and Scheme) and purely functional >> language implementations have interpretors available, there is no >> dependency relation between that fact and the fact that they have >> first class functions. Nor are most of those languages "object >> oriented". >I suspect that if you remove the explicit interpreter and examined the >remaining language, I will still be able to point to a part of the >language and say "that's the interpreter!". That will be the part that >takes a closure and executes it. In Forth terms, Lisp has an outer and >an inner interpreter. I suspect if you take a C compiler apart, you will look at the stack and runtime services (e.g. malloc) and say: "that's the interpreter!". I suspect, however, that you can get most people to agree that there are compilers for C--and for Scheme. [On the other hand, it has been said that "Objects are a poor man's closures", so perhaps you should be making the argument that Scheme is object based. Closures are, of course, more general.] -Ken Dickey kend@data.uucp