Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site utah-cs.UUCP Path: utzoo!watmath!clyde!burl!ulysses!allegra!mit-eddie!godot!harvard!seismo!utah-cs!shebs From: shebs@utah-cs.UUCP (Stanley Shebs) Newsgroups: net.ai,net.lang.lisp Subject: Re: Multi-language systems Message-ID: <3249@utah-cs.UUCP> Date: Mon, 18-Mar-85 23:10:49 EST Article-I.D.: utah-cs.3249 Posted: Mon Mar 18 23:10:49 1985 Date-Received: Wed, 20-Mar-85 06:16:57 EST References: <242@bu-cs.UUCP> <316@cmu-cs-k.ARPA> <253@bu-cs.UUCP> <494@harvard.ARPA> <259@bu-cs.UUCP> Reply-To: shebs@utah-cs.UUCP (Stanley shebs) Organization: Univ of Utah CS Dept Lines: 26 Xref: watmath net.ai:2641 net.lang.lisp:403 Summary: In article <259@bu-cs.UUCP> hen@bu-cs.UUCP (Bill Henneman) writes: >It's when you move across families where things break down, and >especially where you try mixing an inherently interpreted language like >LISP or SNOBOL with an inherently compiled one like FORTRAN that things >get dangerous. If a person as experienced as Bill Henneman can have this misconception, then it must be distressingly prevalent! There are NO languages that are "inherently" interpreted or compiled. The preponderance of Fortran compilers and Lisp interpreters is more the result of historical accident than of any deeper reason. In fact, some elementary diddling with denotational semantics shows that compilers and interpreters always come in pairs - every compiler has an associated interpreter, and vice versa. For "normal" compilers, the interpreter is the bare machine plus a runtime system. For "normal" Lisp interpreters, the "compiler" is the Lisp reader, which maps strings to s-expressions. But these standards of normality are dictated by convention, rather than by the actual definitions of the languages (thus we frequently see Lisp compilers, and less frequently Fortran interpreters). The *real* differences between Lisp and Fortran lie in two areas: Lisp is primarily functional, while Fortran is imperative (no, neither is perfect in its adherence to the paradigm!), and their primitive datatypes are quite different. stan shebs