home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!news.tek.com!tekgen!tekcae!jimc
- From: jimc@tekcae.cax.tek.com (Jim Carden)
- Newsgroups: comp.lang.lisp
- Subject: Re: Why Isn't Lisp a Mainstream Language?
- Message-ID: <1877@tekgen.bv.tek.com>
- Date: 23 Jan 93 15:26:01 GMT
- References: <1993Jan21.230642.18561@netlabs.com> <19930122162651.0.SWM@SUMMER.SCRC.Symbolics.COM> <1993Jan23.073029.29713@linus.mitre.org>
- Sender: news@tekgen.bv.tek.com
- Organization: Mitron Corp., Beaverton, OR.
- Lines: 42
-
- [[** Posted for patl@goldfish.mitron.tek.com **]]
-
- In article <1993Jan23.073029.29713@linus.mitre.org> crawford@boole.mitre.org (Randy Crawford) writes:
- >However I think the real case to be made for Lisp's relative illegibility
- >is one of procedural languages vs. functional languages. When a process is
- >decomposed into separate tasks which are presented sequentially, the reader
- >has the least work to do in understanding the intent of the programmer.
- >Whenever processes are nested and one process generates temporary values
- >which are then fed directly into other processes, as in Lisp, the delineation
- >between tasks (prior vs. successor) is less clear. Certainly we don't write
- >english sentences from the inside out, why should we expect programmers to
- >read source code which is written that way?
-
- There's an interesting point. What other notations are there to improve on this?
- The most common is naming intermediate values. For this I prefer CL and Scheme's
- LET or Dylan's BIND to C's (and Pascal, Ada, Modula, etc.) assignment semantics.
-
- I use LET throughout my code and rarely have deeply nested functional expressions.
-
- >When stripped of its extensions and superb development environment,
- >Lisp doesn't appear to me to have a clear upper hand over a language like
- >Modula 2 or even Ada, not in any general sense. It's not more legible,
- >more intuitive, more efficient in execution. Lisp fares most poorly (IMHO)
- >when compared like this with newer languages like Modula 3, which were
- >designed largely for their legibility and modularity.
-
- These are mostly subjective values, so to each his own. Modern LISPs' lexical
- scopes, closures, and macros allow me to be significantly more expressive
- than with any of the other languages you mentioned. (I have programmed extensively
- in CL, Scheme, C, and C++. I have used the others enough to know what they're
- like.)
-
- >Prefix notation and functional expressions are two `gotos considered good'
- >in Lisp. Violating either of these will either shut down your equations
- >or excommunicate yourself from the Brotherhood. They're both proscriptive.
-
- I could build a calendar based on threads like this one just as accurate
- as the Mayan's. This is a recurring, subjective topic. Your mileage will
- certainly vary.
- --
- Patrick Logan, patl@goldfish.mitron.tek.com, (503) 690-8350
-
-