Relay-Version: version B 2.10 5/3/83; site utzoo.UUCP Posting-Version: version B 2.10.1 6/24/83; site umcp-cs.UUCP Path: utzoo!linus!philabs!cmcl2!seismo!umcp-cs!mangoe From: mangoe@umcp-cs.UUCP (Charley Wingate) Newsgroups: net.lang Subject: Re: Using LISP for scientific programming? (gasp!) Message-ID: <1418@umcp-cs.UUCP> Date: Wed, 28-Aug-85 00:02:06 EDT Article-I.D.: umcp-cs.1418 Posted: Wed Aug 28 00:02:06 1985 Date-Received: Thu, 29-Aug-85 23:46:48 EDT References: <1057@sdcsvax.UUCP> Organization: U of Maryland, Computer Science Dept., College Park, MD Lines: 57 In article <1057@sdcsvax.UUCP> Greg Davidson writes: >People who know and love LISP, such as myself, probably thought ``of >course, how natural'' to the suggestion of using LISP for scientific >and engineering programming. Yet I would expect anyone not intimately >familiar with LISP to dismiss the notion as absurd. I'd like to say a >little something about why. >As if the semantic gulf were not enough, there's the syntax problem, >which stops most people cold at first glance. LISP's default syntax, >Cambridge prefix, looks confusing and awkward to the unpracticed, and >the ability to change syntax at will (necessary for any truly general >purpose language) is really confusing to the novice (its probably >overused by beginning LISP programmers). >For example, when you're used to seeing: > _____________ > | 2 > - b + \| b - 4 a c > ________________________ > 2 a >as ( - b + sqrt( b**2 - 4 * a * c ) ) / ( 2 * a ) >you will find no sense in the default rendition in LISP: > (/ (+ (- b) > (sqrt (- (sqr b) > (* 4 a c)))) > (* 2 a)) Obviously you've never used an HP calculator, which are very popular among engineers and other physical science types. >Well, enough of silly syntax games, I think you get the point. >Now who has a suggestion about how to convince the skeptical that >the effort in changing models is worth it? Well, the problem comes down to this: most really high speed computers are much more like Fortran than Lisp. Fortran tends to be faster, even in the face of compiled, optimized Lisp. When you argue "there are Lisp compilers which generate code as fast a Fortran", the obvious retort is "well, why shouldn't I pick the language which is at least as fast as Lisp, and often much faster?" Lisp also has the disadvantage of requiring more keystrokes, on the average, and this is not an unimportant consideration in a world where typing skills are generally poor. In an interactive debugging mode, Lisp is almost always much slower. I happen to like Lisp a lot, but, with the availability of reasonable interactive debugging tools in Fortran, most scientific programming is more easily and efficiently done in Fortran than in Lisp, by my estimation. Save Lisp for the applications in which it really shines: symbolic manipulations (like MACSYMA). Charley Wingate umcp-cs!mangoe "I say this because I want to be prime minster of Canada some day." -- Michael J. Fox