jScheme

Welcome to the jScheme home page.  jScheme is a barebone Scheme evaluator in javascript that can run online on Netscape 4.0.  This project is the result of a sudden, senseless urge to do something stupid with a CPSC 126 lab one Saturday morning.  And voilà, here's the result after two full days of work!

Note: This is a barebone implementation of Scheme, and has only a handful of primitives and special forms.  Note especially that this evaluator itself is run off an interpreted environment, and does not optimize tail recursion, so don't expect to live to see the result of (fib 30000).  This also brings up the point that I haven't implemented big integers in javascript, therefore (fib 30000), when it does come up, is a float.  Well, you can see that you can't really do much with the evaluator as is...... although you can define macros.

I must give credit to Vincent Manis and Jim Little, coauthors of the CPSC 126 textbook Schematics of Computation, who wrote the original code, in Scheme, for the "metacircular evaluator for Scheme", aka Econo-Scheme.  Without it, there wouldn't be a jScheme (because it's essentially a verbatim port of their code).

If you want to find out more about Scheme, go to the Scheme Repository.
 

Oops.  Almost forgot:

Launch jScheme

One final note: If you resize the window once jScheme has loaded, you must reload it, or it will refuse to work!

Last time I wrote anything in my life: 2-16-1998