Try Scheme 0.1

Report bugs via e-mail. Download source distribution here. Or Try Scheme now.

What is Scheme?

It's a simple, clean, powerful programming language invented at MIT in the 1970s. Why should you learn it?

Read more about Scheme on Wikipedia or on

What is Try Scheme?

There are many Scheme implementations. Try Scheme is mine. It's written in JavaScript, so you can run Scheme code in your browser.

What should I try?

I suggest reading SICP and plugging the examples into Try Scheme. Around section 1.3 they start getting really interesting.

Another cool thing to try is this Scheme program which will teach you just a little bit about logic programming.

Once you get tired of Try Scheme and you're ready to download a real Scheme compiler and IDE, I suggest DrScheme. It's free and relatively unintimidating.

Why doesn't it work in Internet Explorer?

Oh, it works. Very, very slowly. Firefox is about 60 times faster. Download it.

Don't push the Enable Syntax button in IE. It'll take two minutes to finish, if you're lucky, and once it finishes, everything will be very slow. You can use these keywords without enabling syntax:


Is Scheme really this slow?

No. Try Scheme is by far the slowest Scheme implementation I'm aware of. Everything is running on top of JavaScript, which is a pretty slow language. The really good parts are written in Scheme and interpreted (by the interpreter written in JavaScript), which makes them even slower.

Real Scheme implementations compile to machine code, and they're very fast.


If you just want to play with Try Scheme, no download is required. Just start typing.

If you're a developer and you want the source code, download

How you can help

Easy. Give the gift of...

Bug reports make a nice gift, too.


Try Scheme would be a toy without R. Kent Dybvig and Oscar Waddell's portable syntax-case macro system. It implements R5RS macros and much more.

The R5RS pitfalls tests are part of the Try Scheme test suite. A test contributed by Al Petrofsky caught a bug in Try's letrec.