DualScheme is a halfway compliant implementation of Scheme for the DS. It includes most of the basic features of the Scheme language. It provides a REPL (read-evaluate-print-loop) that shows evaluation results on the top screen, and uses the bottom screen as a virtual keyboard. It does not implement continuations, macros, tail-call optimization, garbage collection, or error handling, and it leaves out a few syntax shortcuts, but other than that, DualScheme allows you to program on the go in the Scheme language!