Andrew J Steinbach <stei0113@maroon.tc.umn.edu> wrote:
+---------------
| Some people have pointed out to me in e-mail that vectors would
| be a better choice for a 2D array. However, if I had a banded matrix,
| and didn't want to spend the time implementing banded matrix efficiency
| algorithims, I'd still have to "fill in the blanks" with 0's in Scheme.
+---------------
So? (make-vector 1000 0) gives you a vector of 1000 zeros. And if the vector
was handed to you from somewhere else, just use (vector-fill! {vec} 0).
+---------------
| As far as a good book goes, can you suggest one? Our text is SICP,
| which is good with concepts, but not so much with examples.
+---------------
Ah! It might help to be using an R4RS Scheme...
I've just recently read Kent Dybvig's "The Scheme Programming Language
(2nd edition)", and consider its examples quite nice. [There were a
couple I found *immediate* use for!]
I also liked the order of presentation, which is at times a bit weird, but
it makes things fit together better. E.g., Lots of elaboration on details
of lambdas before even introducing conditionals or recursion. Or, "define-
syntax" & "syntax-rules" are introduced quite early, in the first third of
the book, instead of towards the end. But this means that he could use
"define-syntax" to give a more formal definition of the derived forms in
terms of the essential forms.
[For you C programmers: The book doesn't quite feel like a "K&R" of Scheme;
more like a "Harbison & Steel" of Scheme, if you get what I mean...]
-Rob
-----
Rob Warnock, 7U-550 rpw3@sgi.com
Silicon Graphics, Inc. http://reality.sgi.com/rpw3/
2011 N. Shoreline Blvd. Phone: 415-933-1673 FAX: 415-933-0979
Mountain View, CA 94043 PP-ASEL-IA
Note: New mailstop & FAX numbers. (April 1996)