Subject: Re: environments for learning LISP
From: Erik Naggum <erik@naggum.no>
Date: 2000/05/20
Newsgroups: comp.lang.lisp
Message-ID: <3167816875147164@naggum.no>

* mel terras <mmt@robots.ox.ac.uk>
| I am starting to learn LISP, but was wondering if anyone could give
| me any advice on the best computing environment to proceed.  Is it
| best to spend money on one of the compilers or does the shareware/
| freeware available on the net function just the same?  Is it best to
| work under a windows or unix platform?  Does this make any
| difference anyway?

  Here's how I started.  Having grown up with real computers¹ and very
  comfortable with the Unix world, I found myself exploring Common
  Lisp using CMUCL and GNU Emacs after a very painful project that
  tried to switch from C to C++ in mid-flight.  I already knew Emacs
  Lisp well, and had been working on and with the Emacs environment
  for many years.  (If you have a similarly known environment, don't
  move out of it.)  After a while, I thought I had become fluent in
  Common Lisp, but got my hands on Allegro CL, and discovered to my
  shock and horror that being fluent in Common Lisp without a serious
  environment is like being fluent in C without Unix.  I thought CMUCL
  was great, but it is limiting in what it does to your belief in what
  is doable and practical in Common Lisp.  Programming in Common Lisp
  as per the standard lets you do lots of cool stuff with real-world
  applicability.  (This is different from C, incidentally.)  However,
  once you get a real Common Lisp environment, you learn that there is
  very little point in _limiting_ yourself to the standard and what is
  "portable", a belief held by many proponents of "free" tools.  The
  idea hit me that I am not really locked into a particular tool, but
  I _am_ locked into whatever I'm doing with the tool.  This freed me
  to explore the tool exactly the same way I had explored Unix and
  Emacs earlier.  However, _something_ in Common Lisp has a tendency
  to reduce this desire to explore.  Perhaps the language is too good
  and needs so much exploring on its own you don't think you need to
  explore anything more, but it doesn't come with an environment like
  Emacs Lisp, C, Perl, Java, etc, so it may be natural to think of the
  language sort of in isolation.  This is so hurtful to Common Lisp!

  Now, fortunately, you don't have to spend money on any of the
  commercial compilers if you choose the right environment: They all
  come in somewhat limited free versions, but the limitations are
  designed not to limit _you_ while you're learning Common Lisp.  I
  prefer Allegro Common Lisp from Franz Inc, but others may prefer
  Lispworks from Harlequin (now Xanalys).

| I've read some websites but I'm a bit bewildered as to what software
| is the most recommended and what would provide the mose robust
| environment for me to continue hacking.

  Thanks for using the work "hacking" correctly.  Incidentally, the
  spelling "LISP" is dated -- it used to be the typewriter version of
  small capitals used for acronyms.  Modern spelling of Lisp follows
  that of Unix (which used to be written UNIX for the same reason).

#:Erik
-------
¹ DEC-10 with TOPS-10, and later DEC-20 with TOPS-20.
-- 
  If this is not what you expected, please alter your expectations.