home *** CD-ROM | disk | FTP | other *** search
- Path: sparky!uunet!ogicse!decwrl!decwrl!contessa!mwm
- From: mwm@contessa.palo-alto.ca.us (Mike Meyer)
- Newsgroups: comp.sys.amiga.programmer
- Subject: Re: LISP - USE IT.
- Message-ID: <mwm.2kwj@contessa.palo-alto.ca.us>
- Date: 9 Nov 92 19:31:36 GMT
- Article-I.D.: contessa.mwm.2kwj
- References: <1992Nov5.014803.1@eagle.wesleyan.edu> <mwm.2jht@contessa.palo-alto.ca.us> <1992Nov6.220216.2313@sth.frontec.se> <mwm.2k43@contessa.palo-alto.ca.us> <1992Nov9.132635.2620@sth.frontec.se>
- Distribution: world
- Organization: Missionaria Phonibalonica
- Lines: 72
- X-NewsSoftware: Amiga Yarn 3.4, 1992/08/12 15:49:52
-
- In <1992Nov9.132635.2620@sth.frontec.se>, bjst@sth.frontec.se (Bjorn Stenberg) wrote:
- > mwm@contessa.palo-alto.ca.us (Mike Meyer) writes:
- > > ARexx is so ubiquitous in the Amiga environment that using
- > > anything else calls for a VERY good reason. Being portable across
- > > multiple platforms is such a reason.
- >
- > Or complex programming tasks. I'm in such a situation myself, and found that
- > I'd have to add a lot of things to ARexx to make it suit my needs.
-
- If you're doing something complex, you probably want a language with
- powerful features to go with it - you know, things like closures,
- continuations, garbage collection, list manipulation primitives, etc.
- You should probably be using a modern LISP.
-
- > bjst@sth.frontec.se (Bjorn Stenberg) wrote:
- > > > the language is designed with the target of being easily implemented
- > > > instead of easily used...
- > > You don't know what you're talking about.
- >
- > I think I do. I've done it.
- > Having operators looking like "+ 2 5" has no other reason than making the
- > language easier to interpret and harder to use.
-
- Oh? You don't write macros in your LISP? You don't write programs that
- write other programs? You don't read in complex data structures in an
- ASCII format? All of those are much easier to do in LISP, either
- directly or as a side effect of the s-expression notation the language
- uses.
-
- Of course, it's no harder to write a LISP parser that reads in
- algebraic notation than it is for any other language. It's been done a
- number of time, and in those LISPs for which it was done (ITS LISP and
- InterLISP) it it was a generally available feature.
-
- It's just that programs written in that style are harder to read and
- less maintainable than programs written in a normal LISP style. I
- don't think anyone wanted that ability badly enough to perpetrate it
- on new implementations.
-
- > > Use LISP where it's appropriate - where you're doing a large product, and
- > > need a powerfull language;
- >
- > There are lots of other powerful and versatile languages which aren't TORTURE
- > to the user. Choose one of those instead, I'd say.
-
- Name one. The requirements are: pointers that can't point at garbage;
- garbage collection; a sane typing system (which lets out the entire
- FORTRAN/ALGOL and ML families); sane handling of the funarg problem
- (which lets out many older LISP implementations); continuations or
- something similar; a real macro facility that lets you use the entire
- language; primitives for dealing with extensible collections; user
- extensions being identical to builtins; user-replaceable builtins at
- every level; no important second-class citizens (like functions or
- arrays); probably others I've left out.
-
- Loosing any one of those is TORTURE. Trivial changes in syntax are
- just that - trivia.
-
- > > Since FPL isn't ARexx, I'd urge developers to avoid it as well.
- >
- > Sometimes ARexx just isn't enough. In those cases FPL is great.
-
- When ARexx/C/Modula/Pascal/Eiffel/Sather/ML/Prolog just isn't enough,
- LISP is great :-).
-
- > Well, we basically share the same opinion: DON'T USE LISP! So perhaps there's
- > no need to argue any further. :-)
-
- Nope - I believe in using the language that is appropriate for the
- task. LISP is appropriate for a large number of tasks.
-
- <mike
-