Toby DiPasquale on 17 Jan 2008 16:41:27 -0800


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

Re: [PLUG] Lisp preso?


On Jan 17, 2008 2:54 PM, JP Vossen <jp@jpsdomain.org> wrote:
> If so, is anyone besides me interested?

+1.

> What I learned of formal programming is almost 20 years old.  I'm
> top-down, procedural, and I never really "got" this newfangled Object
> Oriented stuff, so that's where I'm coming from.  I've written a couple
> of trivial C programs, with the book in my lap; otherwise I'm bash &
> Perl all the way.  So I'd be interested in something like:

Lisp is 50 years old this year; its anything but "new-fangled".

> * Why use Lisp

This is related to your fourth question.

> * Lisp and related languages (Scheme, etc.?)

Scheme is a Lisp. Scheme is much smaller and simpler as a language
than Common Lisp (the spec is only 50 pages), but as a result, the
"flavors" of Scheme diverge much more heavily from each other. The two
main remaining flavors of Lisp that have significant followings are
Common Lisp and Scheme. Books and tutorials tend to cover one or the
other, but not both.

> * What's the "best" Lisp compiler for Linux (whatever "best" means) and
> how do we get it (clisp?)

The answer to this question is almost entirely religious. SBCL is
generally considered to be the fastest (in generated code) for Common
Lisp for the free varieties, Clisp is the most portable and Allegro
has the best commercial and library support but is not free. As for
Scheme compilers, the consensus is much less overwhelming... since
Scheme is often used as a teaching tool and in academia, the culture
around Scheme is much more about experimentation and much less about
"production-readiness".

> * What's with all the danged ()'s

The answer to this question is the same as the answer to the first one
on this list. It doesn't seem like it at first, but the parens belie
the most powerful feature of Lisp, one which almost all other
languages lack.

> * "Hello world" from scratch, after installing some Lisp

Installing the compiler on Linux is usually no big deal (apt-get
install sbcl); its usually a bigger pain on OS X. Learning how to use
it and integrate it with your editor/IDE (ok, Emacs) is usually the
hurdle. SLIME helps a lot for Common Lisp. Getting them to work the
same on different platforms is the reason Reddit dumped Lisp for
Python.

> * How to "think in Lisp" (like, thinking in Perl requires hashes and
> Regexp :)

The definitive source for this is SICP (Structure and Interpretation
of Computer Programs). I could never do justice to that masterpiece.
Troll the Philly Lambda mailing list for where I post up the videos of
this class from the 80's and download them all. If you are watching
them and they don't blow your mind, you're in a coma.

> * What are the best books (I've looked, there aren't many)

PCL is the most approachable. Check at http://gigamonkeys.com for an
online copy. PG's ANSI Common Lisp is old and require you to jump
around a bunch, although his On Lisp is still awesome if you are
midlin to advanced at Lisp. (and is available in PDF on his website
for free, though the print copy will literally cost you hundreds of
dollars) As previously stated, SICP is highly recommended. (warning:
its written with Scheme, as one of its authors is also one of the
creators of Scheme)

-- 
Toby DiPasquale
___________________________________________________________________________
Philadelphia Linux Users Group         --        http://www.phillylinux.org
Announcements - http://lists.phillylinux.org/mailman/listinfo/plug-announce
General Discussion  --   http://lists.phillylinux.org/mailman/listinfo/plug