Clementson's Blog

Bits and pieces (mostly Lisp-related) that I collect from the ether.

February 2006
Sun Mon Tue Wed Thu Fri Sat
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28
Jan  Mar

Falling off the wagon with DrScheme

Sunday, February 5, 2006

It's been ages since I last played around with DrScheme (the integrated-IDE version of PLT Scheme. When I first started learning Scheme a few years ago, I used it for a little while before switching over to using Quack with Emacs (see here for my blog entry about setting up Emacs for Scheme). After a while, I pretty much dropped Scheme and focused more on Common Lisp. However, every now and then I "fall off the wagon" and play around with Scheme again. ;-) With Doug Williams due to give his presentation to lispvan in a couple of weeks, I decided to refresh some of the brain cells that used to know Scheme and downloaded DrScheme again.

As I've previously indicated, PLT Scheme has a lot going for it. The PLT team just keeps plugging away, making the product even better and better. The DrScheme online tour provides a good illustration of a lot of the features of the DrScheme IDE. Since I last played around with DrScheme, they've added a debugger that works much like edebug in Emacs. The debugger functions at the higher language levels in the IDE and complements the stepper that is only available at some of the basic teaching levels. Other neat new features are the code profiler and the neat way they allow you to embed test cases into your code. The PLT team consistently come up with innovative new ideas that they incorporate into their IDE. The following snapshot gives you an idea of what the IDE looks like (running one of Doug's examples). Notice the graphical output in the REPL and the arrows that graphically illustrate which symbols come from a particular import in the source pane.

DrScheme

There are a lot of good books around that you can learn Scheme from. However, the problem with learning to use a Scheme implementation (as opposed to Scheme itself) is that every implementation has its own set of libraries and extensions. Fortunately, the documentation for PLT Scheme is excellent. In addition to the standard documentation that comes with the download, there are a number of other PLT Scheme-specific sources of documentation:

emacs Copyright © 2006 by Bill Clementson