Lisp

 

 

 

Anyone who gripes about the profligate way Lisp uses parentheses is completely missing the point. Parentheses are just the simplest possible way of depicting tree-structures. For instance, the tree:

 

    A
    B
     1
      a
      b
     2
    C

 

is topologically equivalent to: ((A)(((a)(b))(2))(C)). Lisp requires exactly as many parentheses as it needs to define such trees, and no more.

 

-Memoirs of an AI Hacker

 

 

Below: these are my notes and references, that I’ve found and liked, and remembered to save, and need to remember to look at again, and reorganize if not organize.

 

Paul Graham’s Lisp FAQ

 

Ian Eure: Some cool things about Lisp

 

some blog’s lisp categories

 

Steve Yegge: Lisp is not acceptable Lisp

 

C2: Smug Lisp Weenie

 

List Processing

 

So the short explanation of why this 1950s language is not obsolete is that it was not technology but math, and math doesn’t get stale. The right thing to compare Lisp to is not 1950s hardware, but, say, the Quicksort algorithm, which was discovered in 1960 and is still the fastest general-purpose sort. --Paul Graham

 

Lisp looks strange not so much because it has a strange syntax as because it has no syntax; you express programs directly in the parse trees that get built behind the scenes when other languages are parsed, and these trees are made of lists, which are Lisp data structures. --Paul Graham

 

Lisp humour
Using Emacs as a Lisp IDE
http://users.bigpond.net.au/d.keenan/Lambda/

 

http://www.dynamiclearningcenter.com/ - “features examples designed to introduce future developers to the power of Common Lisp” has a number of “coming soon” pages, but some examples of pattterns (see below) etc.

 

Lisp references, from Dynamic Learning Center

 

the journal Higher-Order and Symbolic Computation

 

Programming: You’re Doing it Wrong - a glower from McCarthy

 

LOGO is almost Lisp - see Programming.Logo

 

http://reddit.com/search?q=lisp

 

Pascal Costanza’s Highly Opinionated Guide to Lisp

 

A Nickel’s Worth CL section

 

http://www.pchristensen.com/blog/lisp-companies/

 

Every language tells a story, this one is Common Lisp’s
lisp tutorial - aka “Practical Common Lisp: the book”

 

 

Programming

human-order sorting. See also: Programming.Sort?
Steve Yegge: Lisp Wins
Common-Lisp Cookbook - “a collaborative project that aims to provide for Common Lisp something similar to the Perl Cookbook published by O’Reilly.”

 

see also: Emacs.ELisp

 

 

Books

see Books

 

 

Design Patterns

 

http://www.norvig.com/lisp_talk_final.htm
Design Patterns in Dynamic Programming
2 patterns in Lisp

 

See Also: Programming.DesignPatterns and Programming.FunctionalProgramming#DesignPatterns

 

 

Implementations

Movitz - on-the-metal Lisp dev-environment

 

LSharp - a Lispish .NET package

 

 

See Also

Scheme
Emacs.ELisp
Logo

 

 

Category tags

Programming Language Lisp functional programming Emacs