Henry's response only covered part of the original question. In addition
to recommending a particular implementation, the question asked about other
materials (reference manuals, tutorials, books). I'd like to respond to
these, but first, a few comments about the terms in the original question.
"Lisp" (which should be capitalized) is not a single language but a family
of languages begin by John McCarthy in the late 1950s. During the work of
X3J13 (the ANSI Common Lisp standardization committee) John asked that this
particular dialect _not_ be named Lisp, and that term should be reserved
for the whole family. In these modern times ere are at least two quite
popular dialects of Lisp: Common Lisp and Scheme. The former is more used
in production programming and preserves a lot of back compatibility with
earlier dialects, while the latter retains a somewhat more elegant
theoretical framework. Both are worth knowing, but of course, you should
first learn just one, and CL is the one used by modern Maxima. But if you
want to sound like you know what you are doing, and out of respect to JM,
you should refer to Common Lisp rather than Lisp.
Another issue is the "which compiler" question. Now, CL is intended as an
efficient compiled language, but speaking of CL implementations as
"compilers" is a longstanding confusion from early marketing scum who
seemed to think that the compiler was the thing. I've worked a nearly 30
years in CL implementation, and this confusion remains hard to kill. The
compiler is of course important, converting CL forms into
hardware-executable code, but the compiler itself is only a minor fraction
of the total implementation. (The ratio varies with the strategies of
different implementations, but the rest of the implementation --
arithmetic, OS interface, memory management, reader, printer, CLOS, the
hundreds of standard functions in CL, and the interfaces to editors, window
systems, etc. -- are a much larger ball of mud. You should better refer to
the "implementation" or "platform" rather than "compiler" as those terms
better reflect reality.
Now to your real questions.
What materials you should use to learn CL of course depends on your prior
knowledge. If you know any similar languages, and have a lot of
programming experience outside mathematics, then you might not need much.
But if not, a well organized text will be hekpful. I can recommend Peter
Seibel's _Practical Common Lisp_ is a very good instructional text on the
language and how to use it (e.g. with Emacs). It is published by Apress,
but is also available online and free at http://www.gigamonkeys.com/book/ .
The printed book is probably more convenient than an electronic copy, but
you can suit yourself and your budget.
Most experienced Lisp coders prefer Emacs, as there exist useful
interactive interfaces between CL implementations and Emacs (Slime, and ACL
Eli) but there are also others that use native OS editing widgets (not
recommended). There are many different implementation to choose from that
run on most popular platforms. These include free implementations,
commercial implementations, and free versions of commercial
implementations. The 32 vs 64 bit distinction is not crucial, since 64-bit
Windows will run either flavor of app. I think Emacs is still usually
distributed as 32-bit, but that doesn't limit which Lisps is can run.
Enjoy.
On Tue, Oct 29, 2013 at 5:13 AM, jfrm.maurel at gmail.com <
jfrm.maurel at gmail.com> wrote:
> Hi,
>
> I would like to learn the basic of lisp on windows 7 (64 bits).
>
> Could you please tell me:
> - which compiler should I use ? (gcl ?)
> - which editor and environment ? (emacs ?)
> - tutorial ?
> - lisp reference manual ?
> - books ?
>
> In this first stage the more straightforward to use would be the best for
> me.
> For now I am a bit lost to get started.
>
> Regards
>
> --
> Jean-Fran?ois MAUREL
> PIMECA
> http://www.pimeca.com
>
> ______________________________**_________________
> Maxima mailing list
> Maxima at math.utexas.edu
> http://www.math.utexas.edu/**mailman/listinfo/maxima<http://www.math.utexas.edu/mailman/listinfo/maxima>
>