[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Thx almost everyone



At 19:03 4/16/95 -0500, Ken Tilton wrote:
>Thanks for the dozen+ of you who pointed me to #'describe-object as opposed
>to #'describe.
>
>I guess one good thing about Compuserve is that one can always see that a
>dumb question has been answered by someone else, to save everyone else the
>trouble.
>
>And to the one, um, person uncharitable enough to swear at me ("RTFM") (and
>to those you who were kind enough not to <g>): I *did* read a FM
>(Keene)--the one I *always* see mentioned as the CLOS bible--and *she* said
>#'describe. And when I *did* find that #'describe existed in MCL but was
>not a generic function, I concluded (mistakenly--shoot me, OK?) something
>non-standard was afoot and turned to an MCL-specific source instead of
>digging  further into standard references.
>
>Sorry if I'm over-proacting <heh-heh>. I'm a little burnt. Six weeks ago I
>got MCL in the mail and *two chapters* into "Getting Started" I got up,
>walked into the programmers' area and stopped the C++ development of
>version two of my app, which I now have to complete in three months before
>going belly up.
>
>That was a good call. After decades of programming between us we feel like
>kids in a candy shop with CL, and we know we have not even seen the half of
>it. Every time we look at each other's code we say to each other, "Why
>aren't you using #'xyz." "#'xyz?! Lisp has that?!"
>
>So brace yourselves, an occasional boner of a question is going to slip
>through our Steele mesh :).
>
>BTW, what's this "car" and "cdr" I see all over the place?

They are old names for "first" and "rest".  The date back to the implementation
of Lisp on an old IBM machine (704 I believe) where the two halves of a cons
were kept in two registers.  CAR stands for "contents of address register" and
represents the instruction used to get the first element of the cons.  CDR is
similarly contents of decrement register.

Their use is considered old-fashioned at best (and poor style at worst) these days.

You'll also occaisionally see things like CDADR, which is a shorthand for
(CDR(CAR(CDR ...  This was common in the days before insulating procedural
code from knowledge of the representation of the data became fashionable.

>
>Cheers,
>
>Mad Dawg Tilton