Questions tagged [racket]

Racket is an extensible multi-paradigm programming language in the Lisp/Scheme family.

Racket is a general purpose, multi-paradigm programming language in the Lisp/Scheme family. One of its design goals is to serve as a platform for language creation, design, and implementation. The language is used in a variety of contexts such as scripting, general-purpose programming, computer science education, and research.

Racket Programming Books

Racket documentation is well written and directly accessible from within the DrRacket IDE. It has two great tutorials: one on web applications and one about systems programming.

A great tutorial on macros.

History: Racket was initially called PLT Scheme.

Questions about BSL, HTDP, and other student languages should go into the racket-student-languages tag instead.

5811 questions
213
votes
6 answers

How is Racket different from Scheme?

Racket is a descendant of Scheme. How is Racket different than R6RS? What did it add, or take away, or is just different? I understand that Racket is more than a language, it's a platform for languages. But I'm referring to the main Racket dialect.
mudgen
  • 7,213
  • 11
  • 46
  • 46
149
votes
4 answers

What are the differences between Clojure, Scheme/Racket and Common Lisp?

I know they are dialects of the same family of language called lisp, but what exactly are the differences? Could you give an overview, if possible, covering topics such as syntax, characteristics, features and resources.
MaiaVictor
  • 51,090
  • 44
  • 144
  • 286
103
votes
4 answers

What are the actual differences between Scheme and Common Lisp? (Or any other two dialects of Lisp)

Note: I am not asking which to learn, which is better, or anything like that. I picked up the free version of SICP because I felt it would be nice to read (I've heard good stuff about it, and I'm interested in that sort of side of programming). I…
PrettyPrincessKitty FS
  • 6,117
  • 5
  • 36
  • 51
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
62
votes
2 answers

What is the difference between quote and list?

I know that you can use ' (aka quote) to create a list, and I use this all the time, like this: > (car '(1 2 3)) 1 But it doesn’t always work like I’d expect. For example, I tried to create a list of functions, like this, but it didn’t work: >…
Alexis King
  • 43,109
  • 15
  • 131
  • 205
60
votes
6 answers

What exactly is a symbol in lisp/scheme?

For the love of the almighty I have yet to understand the purpose of the symbol 'iamasymbol. I understand numbers, booleans, strings... variables. But symbols are just too much for my little imperative-thinking mind to take. What exactly do I use…
dotnetN00b
  • 5,021
  • 13
  • 62
  • 95
60
votes
8 answers

Collection of Great Applications and Programs using Macros

I am very very interested in Macros and just beginning to understand its true power. Please help me collect some great usage of macro systems. So far I have these constructs: Pattern Matching: Andrew Wright and Bruce Duba. Pattern matching for…
unj2
  • 52,135
  • 87
  • 247
  • 375
49
votes
4 answers

Why is foldl defined in a strange way in Racket?

In Haskell, like in many other functional languages, the function foldl is defined such that, for example, foldl (-) 0 [1,2,3,4] = -10. This is OK, because foldl (-) 0 [1, 2,3,4] is, by definition, ((((0 - 1) - 2) - 3) - 4). But, in Racket, (foldl -…
Racket Noob
  • 1,056
  • 1
  • 8
  • 16
43
votes
2 answers

Help understanding Continuations in Scheme

I have been working alongside The Little Schemer to learn Scheme and using PLT-Scheme for my environment. The Little Schemer has helped me tremendously with recursion (it is straightforward for me now) but I'm stuck on a portion of the book that…
Ixmatus
  • 1,051
  • 9
  • 15
36
votes
1 answer

What exactly is a "continuation prompt?"

I'm trying to decipher the documentation call-with-continuation-prompt Applies proc to the given args with the current continuation extended by a prompt. The prompt is tagged by prompt-tag, which must be a result from either…
36
votes
1 answer

Why is one-armed "if" missing from Racket?

In standard Scheme it is possible to write (if (> x 2) (set! x (- x 1))) but this is not possible in Racket -- Racket's if always requires two arms. Why?
soegaard
  • 30,661
  • 4
  • 57
  • 106
34
votes
5 answers

Is there an equivalent to Lisp's "runtime" primitive in Scheme?

According to SICP section 1.2.6, exercise 1.22: Most Lisp implementations include a primitive called runtime that returns an integer that specifies the amount of time the system has been running (measured, for example, in microseconds). I'm using…
Bill the Lizard
  • 398,270
  • 210
  • 566
  • 880
32
votes
3 answers

Dr Racket problems with SICP

I'm working through SICP. Currently, in the first chapter, I'm having problems getting Racket to let me redefine "primitives". For instance, I was under the impression that I should be able to arbitrarily do (define + 5) and that would be fine, or…
afkbowflexin
  • 4,029
  • 2
  • 37
  • 61
31
votes
3 answers

Programming Scheme(Racket) with VIM - How to get started

recently, I started programming Racket (formerly Scheme) in DrRacket. I quite fast I began to miss all the features of VIM in DrRacket, so I would like to use VIM for my scheme(racket) programming. I know that Emacs might be the best choice for…
Markus1189
  • 2,829
  • 1
  • 23
  • 32
31
votes
4 answers

Little Schemer and Racket

I'm starting to read the Little Schemer and now instead of PLT Scheme we have Racket. I would like to know if Racket is suitable for doing the exercises in the book or do I need to get another true Scheme compiler. Before I forgot to tell you, my OS…
Marcote
  • 2,977
  • 1
  • 25
  • 24
1
2 3
99 100