Questions tagged [lisp]

Lisp is a family of general purpose programming languages, influenced by the lambda calculus, and with the ability to manipulate source code as a data structure.

Introduction

The name Lisp derives from "LISt Processor". It was originally created as a practical mathematical notation for computer programs. See Wikipedia for more information.

Hello World Program in Lisp

;;; Hello World in Common Lisp

(defun helloworld ()
  (print "Hello World!"))

Popular dialects

Free Lisp Programming Books

There is also a Stack Overflow chat room on Lisp.

6922 questions
87
votes
15 answers

What is the best Scheme or LISP implementation for OS X?

I am looking for a version of Scheme or even LISP that I can use to recover some lost Lisp development skills. Some web capabilities would be nice but not essential. I've looked at Plt and MIT scheme and, while both look pretty good, the Plt seems…
Mark Brittingham
  • 28,545
  • 12
  • 80
  • 110
84
votes
6 answers

How many primitives does it take to build a LISP machine? Ten, seven or five?

On this site they say there are 10 LISP primitives. The primitives are: atom, quote, eq, car, cdr, cons, cond, lambda, label, apply. http://hyperpolyglot.wikidot.com/lisp#ten-primitives Stevey reckons there are seven (or five): Its part of the…
hawkeye
  • 34,745
  • 30
  • 150
  • 304
80
votes
2 answers

Where to learn how to practically use Common Lisp

I am a C++ programmer trying to learn Common Lisp. I have looked at some books like Land of Lisp and read numerous online articles about the various virtues of Lisp. However, I need some advice. Almost everything I have read about Common Lisp has to…
NewLisper
  • 835
  • 1
  • 7
  • 5
79
votes
3 answers

How to read mentally Lisp/Clojure code

Thanks a lot for all the beautiful answers! Cannot mark just one as correct Note: Already a wiki I am new to functional programming and while I can read simple functions in Functional programming, for e.g. computing the factorial of a number, I am…
user855
  • 19,048
  • 38
  • 98
  • 162
78
votes
15 answers

How can I do web programming with Lisp or Scheme?

I usually write web apps in PHP, Ruby or Perl. I am starting the study of Scheme and I want to try some web project with this language. But I can't find what is the best environment for this. I am looking for the following features: A simple way of…
Castro
  • 1,436
  • 2
  • 15
  • 19
76
votes
5 answers

Lisp commenting convention

What is the Lisp convention about how many semicolons to use for different kinds of comments (and what the level of indentation for various numbers of semicolons should be)? Also, is there any convention about when to use semicolon comments and…
compman
  • 2,174
  • 2
  • 18
  • 26
76
votes
6 answers

How to compare two functions for extensional equivalence, as in (λx.2*x) == (λx.x+x)?

Is there a way to compare two functions for equality? For example, (λx.2*x) == (λx.x+x) should return true, because those are obviously equivalent.
MaiaVictor
  • 51,090
  • 44
  • 144
  • 286
74
votes
17 answers

Which Lisp should I learn?

Which Lisp (dialect) should I learn, and why? The fragmentation between CL and Scheme slows uptake (at least for me!). So, give me the "true answer", please! I have tried to read feature comparisons, and they seem to get bogged down in esoterica…
Gregg Lind
  • 20,690
  • 15
  • 67
  • 81
74
votes
8 answers

What is the best Scheme implementation for working through SICP?

I have been using PLT Scheme, but it has some issues. Does anyone know of a better implementation for working through SICP?
Joel McCracken
  • 2,275
  • 3
  • 17
  • 11
71
votes
9 answers

Why is the Lisp community so fragmented?

To begin, not only are there two main dialects of the language (Common Lisp and Scheme), but each of the dialects has many individual implementations. For example, Chicken Scheme, Bigloo, etc... each with slight differences. From a modern point of…
Justin Ethier
  • 131,333
  • 52
  • 229
  • 284
71
votes
18 answers

Practical example of Lisp's flexibility?

Someone is trying to sell Lisp to me, as a super powerful language that can do everything ever, and then some. Is there a practical code example of Lisp's power?(Preferably alongside equivalent logic coded in a regular language.)
Peter Boughton
  • 110,170
  • 32
  • 120
  • 176
69
votes
13 answers

Editing programs "while they are running"? Why?

I've been getting more into Lisp and Lispy languages lately, and I'm finding them quite powerful. One thing I've been reading all over the net is that a benefit of writing in Lisp, Clojure, etc, is that you can edit your program "while it's…
MikeC8
  • 3,783
  • 4
  • 27
  • 33
69
votes
4 answers

How is Lisp's read-eval-print loop different than Python's?

I've encounter a following statement by Richard Stallman: 'When you start a Lisp system, it enters a read-eval-print loop. Most other languages have nothing comparable to read, nothing comparable to eval, and nothing comparable to print. What…
Jan Wrobel
  • 6,969
  • 3
  • 37
  • 53
68
votes
7 answers

What is ' (apostrophe) in Lisp / Scheme?

I am on day 1 hour 1 of teaching myself Scheme. Needless to say, I don't understand anything. So I'm reading The Little Schemer and using this thing: http://sisc-scheme.org/sisc-online.php as an interpreter. I need to use ' in for example (atom?…
jjerms
  • 1,095
  • 1
  • 10
  • 10
68
votes
11 answers

Why Clojure over other JVM Lisps: Kawa, Armed Bear or SISC?

The JVM already had three Lisps before Clojure arrived on the scene: Kawa, Armed Bear and SISC. What gap does Clojure fill that was left by those Lisps?
uzo
  • 2,821
  • 2
  • 25
  • 26