

GScheme 

A GNUstep-aware scheme interpreter. Includes many examples, e.g. the
sieve of Erathostenes to compute primes, a Koch curve plotter, graphs
of various functions etc. GScheme is fully tail recursive. The garbage
collector bypasses GNUstep's retain/release mechanism in order to deal
with circular data structures.

GScheme is document-based and you can edit more than one file at the
same time.

Speed leaves something to be desired as there is a lot of overhead due
to Objective C.

Press Ctrl-Return in the interpreter window to evaluate the last form
that you have entered.

Special forms implemented include 

       define, set!, lambda, 
       if, and, or 
       begin, apply, 
       quote, case, cond, 
       let, let, letrec, 
       call-with-current-continuation 

Primitives implemented include 

       +, *, -, /, =, >, <, 
       draw-move, draw-line, draw-color, 
       sin, cos, sqrt, 
       quotient, remainder, not, 
       zero?, pair?, number?, eqv?, eq?, 
       cons, car, cdr, list, null?, 
       set-car!, set-cdr!, 
       display, newline 

There is a library of additional primitives that are loaded on start-up. 
