From: Marc Wachowitz
Subject: Re: Where can I find *solid* Lisp documentation, syntax or sample code?
Date:
Message-ID: <62o7hf$ud$1@trumpet.uni-mannheim.de>
[posted and mailed by request]
········@flash.net (Jason) wrote:
> Where can I find some straightforward documentation or syntax on the Lisp
> language?
The web pages of the Association of Lisp Users
http://www.elwoodcorp.com/alu/index.htm
contain lots of documents and references to further sites, and are quite
well organized. It's hard to give concrete advice without knowing more
about the background of your question - a seasoned software engineer with
solid theoretical background and interest in commercial applications is
likely to have other preferences than a student who mainly wants to learn
the essential concepts which make Lisp so expressive, and may not care very
much about delivery, and perhaps not even about a large standard library.
Syntax is only one small aspect of Lisp, and even with a specification of
semantics, I'd recommend one or more books, to get familiar with the way
Lisp's power can be used well, and with approaches to programming which
have been developed in the context of Lisp (hardly anyone trained only in
mainstream languages will come up with that stuff alone). "Lisp" is really
the name for a family of programming languages, the most relevant of which
are probably "Common Lisp" and "Scheme". From my recent reply to another
request for information on Lisp (in the context of compiler construction):
Here are some references, both to books and to online material. Scheme is a
relatively small Lisp dialect designed with much emphasis on elegance and easy
combination of various concepts, whereas Common Lisp is a very large language
with lots of different tools for practical projects (which isn't to say that
Scheme wouldn't be useful - this is only meant as rough hint where to look
first, according to your preferences).
Scheme
------
* Harold Abelson and Gerald Jay Sussman with Julie Sussman,
"Structure and Interpretation of Computer Programs", Second Edition
Though not centered on compiler construction, this book shows the essence
of a culture of programming (particularly using the Lisp dialect Scheme,
though its usefulness is not restricted to Scheme programmers), which does
also include a lot on computational [and mental, of course] reflection.
In the view of many people, this is _the_ book which every programmer should
read at least once. While it will harldly be sufficient if you plan to
implement the best optimizing Scheme compiler which ever existed, it will
provide a solid theoretical foundation for very-high-level programming
concepts - including the meaning of programming languages - in an elegant
form rarely found elsewhere. (Don't fear, it isn't merely for those who
only didn't make their doctorate degree in math since they found university
too trivial ;-)
* A still incomplete (but already quite useful) very readable introduction
are Paul Wilson's "Course Notes on Scheme and its Implementation", online at
http://www.cs.utexas.edu/users/wilson/cs386l.html
This may also be a good starting point to check whether you'd like to look
into Scheme at all.
* The Scheme Repository contains documentation of Scheme, source code and
different implementations:
http://www.cs.indiana.edu/scheme-repository/
The language definition is online at
http://www.cs.indiana.edu/scheme-repository/R4RS/r4rs_toc.html
Common Lisp
-----------
* Paul Graham, "ANSI Common Lisp"
This book teaches the major facilities of Common Lisp (including a quick
reference), and gives a good impression of what Lisp programming is about.
* Paul Graham, "On Lisp: Advanced Techniques for Common Lisp"
This book shows sophisticated methodologies usual in mature Common Lisp
programming, assuming some basic familiarity. It covers, among other topics,
functional abstraction, macros, rule-evaluation, and object-orientation.
Motto: Lisp is a programmable programming language
* The detailed definition of ANSI Common Lisp (though probably not suited
as primary tutorial, at least for most readers), is available online:
http://www.harlequin.com/books/HyperSpec/
-- Marc Wachowitz <··@ipx2.rz.uni-mannheim.de>
In article <···········@trumpet.uni-mannheim.de>,
··@ipx2.rz.uni-mannheim.de (Marc Wachowitz) wrote:
We need a small uptodate mini FAQ.
1) What is Lisp?
2) What is Scheme?
3) Where can I get a Lisp Interpreter?
4) Where can I get a Lisp Interpreter for Windows?
5) Where can I get a Lisp Interpreter for Linux?
6) Where can I get a Lisp Interpreter for PCs?
3) Where can I get a Lisp compiler?
4) Where can I get a Lisp compiler for Windows?
5) Where can I get a Lisp compiler for Linux?
6) Where can I get a Lisp compiler for PCs?
7) How do I start Lisp?
8) Can I create an executable for Lisp programs?
9) How do I interface Lisp to C?
10) Are there any web applications for Lisp?
11) Is Lisp better than C/Eiffel/Java/C++/Assembler/Cobol/SmallTalk?
12) Who uses Lisp?
13) What books should I read?
14) What documentations should I use?
???
--
http://www.lavielle.com/~joswig/
From: Erik Naggum
Subject: Re: Where can I find *solid* Lisp documentation, syntax or sample code?
Date:
Message-ID: <3086682844094383@naggum.no>
* Rainer Joswig
| 3) Where can I get a Lisp Interpreter?
| 4) Where can I get a Lisp Interpreter for Windows?
| 5) Where can I get a Lisp Interpreter for Linux?
| 6) Where can I get a Lisp Interpreter for PCs?
| 3) Where can I get a Lisp compiler?
| 4) Where can I get a Lisp compiler for Windows?
| 5) Where can I get a Lisp compiler for Linux?
| 6) Where can I get a Lisp compiler for PCs?
please, call it a "Lisp Environment", and answer the questions about what
kind of language Lisp is in the first question. perhaps you could even
make a point that Lisp is a language that likes to sit above the operating
system, not a language like C that makes "executables" that are placed
beside the operating system, just like the endless row of other utilities.
maybe even "portability of source programs" is still a value these days,
when nothing else (not even Java) is _actually_ concerned with it.
#\Erik
--
if you think this year is "97", _you_ are not "year 2000 compliant".
see http://www.naggum.no/emacs/ for Emacs-20-related material.