Merge branch 'pryor'
[lambda.git] / learning_scheme.mdwn
index 1968930..d317b9b 100644 (file)
@@ -1,18 +1,32 @@
 
+Initial Tutorials
+=================
+
 *      [[!wikipedia Scheme (programming language) desc="Wikipedia overview of Scheme"]]
 
-*      If you are new to programming or if you have the patience to work through a textbook, you should work through a textbook. Some good choices are The Little Schemer book(s) we recommended for the seminar; and also:
+If you are new to programming or if you have the patience to do so, you should work through a textbook.
+
+*      A warmly-recommended introduction available online is [Teach Yourself Scheme in Fixnum Days](http://www.ccs.neu.edu/home/dorai/t-y-scheme/t-y-scheme.html) This is a short introductory text that introduces common Scheme techniques.
+
+*      The Little Schemer book(s) we recommended for the seminar are good introductions, requiring some more commitment.
+
++      [How to Design Programs](http://www.htdp.org/2003-09-26/), by Matthias Felleisen, et al., is another good choice, which the Racket groups recommends. Whenever the book says "Scheme," you can read it as "Racket."
 
-       +       [How to Design Programs](http://www.htdp.org/2003-09-26/), by Matthias Felleisen, et al., which the Racket groups recommends. Whenever the book says "Scheme," you can read it as "Racket."
 
-       Another warmly-recommended introduction available online is [Teach Yourself Scheme in Fixnum Days](http://www.ccs.neu.edu/home/dorai/t-y-scheme/t-y-scheme.html) This is a short introductory text that introduces common Scheme techniques.
+If you're already a programmer and you're in more of a hurry, you could instead look at:
 
-*      If you're already a programmer and you're in more of a hurry, you could instead look at the [Quick Introduction to Racket](http://docs.racket-lang.org/quick/index.html). This tutorial provides a brief introduction to the Racket programming language by using DrRacket and one of Racket's picture-drawing libraries.
+*      the [Quick Introduction to Racket](http://docs.racket-lang.org/quick/index.html). This tutorial provides a brief introduction to the Racket programming language by using DrRacket and one of Racket's picture-drawing libraries.
 
 *      [An Introduction to Lambda Calculus and Scheme](http://www.jetcafe.org/~jim/lambda.html) is also aimed at programmers.
 
+More details
+============
+
 *      After any of the preceding, you could move on to [Racket Guide](http://docs.racket-lang.org/guide/index.html). This starts with a tutorial on Racket basics; then it describes the rest of the Racket language. This guide is intended for programmers who are new to Racket or new to some part of Racket. It assumes programming experience, so if you are new to programming, you should instead start with one of the textbooks listed above. This Guide describes parts of the Racket language which go beyond the learning-oriented fragments of How to Design Programs.
 
+Even more details
+=================
+
 *      The [Complete Racket Reference Manual](http://docs.racket-lang.org/reference/index.html) defines the core Racket language and describes its most prominent libraries. The Racket Guide is friendlier; though less precise and less complete.
 
 *      The Scheme language is standardized; the various implementations of the
@@ -32,5 +46,8 @@ R5RS Scheme, and a richer language like R6RS Scheme that standardizes many of th
 on top of the base.
 
 *      [Scheme FAQ](http://community.schemewiki.org/?scheme-faq)
+
+<!--
 *      [Scheme Requests for Implementation](http://srfi.schemers.org/) (SRFI)
 *      The [Schematics Scheme Cookbook](http://schemecookbook.org/) is a collaborative effort to produce documentation and recipes for using Scheme for common tasks.
+-->