[comp.lang.lisp] Lisp,LIsp,LISp,LISP...

cdwilli@kochab.cs.umbc.edu (01/24/90)

I just got my copy of Common LISP, Second Edition.  It's Family-Bible
size -- twice the number of pages as the first edtion!  How'm I
supposed to learn LISP when I can't even fit the text into my
briefcase?  Can you imagine what's happening at the universities?

"Yeah, I thought about taking LISP, but C's a better language.  It's
smaller, more portable."

"Now, class for exercises using LISP..."

"We took LISP off our computer.  We decided that it was taking up too
much room; why, just look at the size of the Reference Manual!"


				;-)

lgm@cbnewsc.ATT.COM (lawrence.g.mayka) (01/24/90)

In article <2712@umbc3.UMBC.EDU> cdwilli@kochab.cs.umbc.edu () writes:
>I just got my copy of Common LISP, Second Edition.  It's Family-Bible
>size -- twice the number of pages as the first edtion!  How'm I

ANSI Common Lisp has, by my reckoning, increased the number of
unique syntactical constructs from 26 to 31 (29 special forms, the
form for macro calls, and the form for function calls).
Individual macros and functions play the same role as the standard
library functions and header file definitions of ANSI C.  As I
understand it, the spirit of Common Lisp is that common idioms
employed in multiple application areas ought to be standardized
(i.e., incorporated into the language definition), for several
reasons:

a) To prevent gratuitous incompatibility and nonportability.

b) To reduce the need to continually invent, implement, and
optimize equivalent idioms from one project or company to the next.

c) To allow for implementation-specific optimization (beneath the
interface).

Some Common Lisp implementations - e.g., those for computers not
having virtual memory - often omit such macros and functions from
the base memory image, loading them automatically into the running
system from disk on first reference.

Similar arguments for portability, reuse, and optimization apply
to Common Lisp's predefined data types such as RATIO, COMPLEX,
BIT-VECTOR, HASH-TABLE, PATHNAME, and STREAM.

ANSI Common Lisp also embraces some of the functionality of a
programming environment, or even an operating system.  Examples
include ED, COMPILE, LOAD, TRACE, STEP, INSPECT, DISASSEMBLE,
RENAME-FILE, and DELETE-FILE.  Portability of basic system
interfaces was, I assume, a primary goal in defining these.

My suggestion is that people try not be intimidated by the
physical size of CLtL/2e, but to consider it as a reference work
and to learn Common Lisp via one of the tutorial-style books on
the market, such as "Lisp - 3rd Edition" by Winston and Horn, or
even an on-line tutorial such as is included in the $80 Golden
Common Lisp Student Edition (for IBM-compatible PCs).


	Lawrence G. Mayka
	AT&T Bell Laboratories
	lgm@ihlpf.att.com

Standard disclaimer.