Path: utzoo!attcan!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.csd.uwm.edu!gem.mps.ohio-state.edu!ginosko!uunet!philmtl!ray From: ray@philmtl.philips.ca (Raymond Dunn) Newsgroups: comp.lang.c Subject: Re: Right-to-left (was: Re: entry a Message-ID: <678@philmtl.philips.ca> Date: 1 Sep 89 19:56:28 GMT References: <673@philmtl.philips.ca> <225800216@uxe.cso.uiuc.edu> Reply-To: ray@philmtl.philips.ca (Raymond Dunn) Followup-To: comp.lang.misc Organization: Philips Electronics Ltd. - St. Laurent P.Q., Canada Lines: 45 >In article <818@skye.ed.ac.uk> richard@aiai.UUCP (Richard Tobin) writes: >.... there are lisp systems without an interpreter at all - >when you type in an expression, they compile it and execute the code >immediately. and ray@philmtl.philips.ca replies: >This just shows that a very hazy line separates "compilers" and "interpreters" >There are many of us who would still call such an incremental compiler an >interpreter. then mcdonald@uxe.cso.uiuc.edu writes: >There is an obvious distinction between an incremental compiler >and an interpreter: an incremental compiler generates actual machine >code of the CPU at hand (NOT pseudocode) and then executes it. > > [goes on to say you can nearly always write an interpreter in 'C' but > have no guarantee that you can generate and execute real machine code > in 'C'] I'm sorry, I've got us bogged down in semantics. (:-( I've no problem with the substance of the above argument, I have a problem with the narrow use of the word "interpreter". To me, there are many shades of implementations which fall under the interpreter umbrella, including those which start from source every execution, those which save pseudo code, and those which actually produce code which is executed, whether it is saved for the next time each statement is executed or not. Even the boundary between pseudo code and real code is fuzzy. There are systems which, instead of producing actual pseudo code produced a sequence of subroutine calls which is executed, or a minimal code set like push,pop,call and jump. Putting it another way, it is possible to chose a "pseudo" code which is directly executable. Hey, who cares huh? All I'm contending is that the line where these systems stop being "interpreters" and start being something else, is fuzzy. Follow-ups to comp.lang.misc. -- Ray Dunn. | UUCP: ..!uunet!philmtl!ray Philips Electronics Ltd. | TEL : (514) 744-8200 Ext: 2347 600 Dr Frederik Philips Blvd | FAX : (514) 744-6455 St Laurent. Quebec. H4M 2S9 | TLX : 05-824090