tags:

views:

162

answers:

5

I am planning on learning Scheme (by following SICP) and afterwards doing a project with this language. However, I was wondering what would be a good IDE for this? I've looked around a bit, but could not really find very much, except something called Edwin?

+4  A: 

Racket comes with a good IDE.

Vijay Mathew
+2  A: 

You can use GNU Emacs with one window open your scheme script and in other scheme interpreter (like guile or MIT Scheme).
You can run this by

C-x 2
C-x o
M-x run-scheme
jcubic
+8  A: 

Other answers have given all the good choices, but without much description. Here's some more detail:

DrRacket

Racket's IDE, DrRacket, is a great tool for beginners and has a lot of strengths for more advanced schemers. It has good profiler and debugger support (far better than Emacs), uses "standard" keyboard shortcuts by default, and is very clean and easy to use. However, it sometimes lacks functionality its creators view as confusing; for example, compiling only some expressions from your source code can put the REPL in a confusing state, so it's not provided. DrRacket only works for the Racket dialect of Scheme and its derivatives, however, so if you want to work with another implementation, you should probably look at:

Emacs

GNU Emacs is another fine option for advanced schemers who are willing to put some time into learning their editor. It is powerfully customizable, has modes for almost any file type, and handles Scheme well, especially with quack installed (quack is an extension for Scheme named in parody of DrRacket --- get it, quack?). It doesn't limit you from doing anything you might choose. However, it has a learning curve like a brick wall --- its model of text is unique, its keyboard shortcuts are different than anything you've used before (unless you use CUA mode, which makes them more normal), and you have to use Emacs Lisp to configure and extend it.

Bottom Line

You'll be happy using either one once you're accustomed to it. Emacs is less limiting, but harder to learn; DrRacket is more limiting, but more able out of the box in some areas and much easier to learn.

JasonFruit
Racket IDE (and Edwin) are tied to particular implementations of scheme. Either of which will work for SICP. Emacs, allows seperation of choice of development environment from choice of scheme implementation. That said, emacs is not integrated in the say Racket is.
Shannon Severance
That's an excellent point, Shannon --- I'll edit to include it.
JasonFruit
A: 

I was writing an answer here regarding PLT scheme so i thought I would check out their webiste. It appears PLT scheme has changed name to Racket. And I suppose the old editor DrScheme is superseeded by the one called DrRacket.

We used DrScheme last year at the univeristy. Very easy to get started. One window for writing definitions and one for output. At the end of the course we created a text adventure game :D (with OO-programming)

Moberg