Abstract. RainbowScheme is a visual stepping system that presents Scheme program’s runtime state using icons, colored environment trees, and colored Scheme code. A Scheme program can be executed step-by-step in RainbowScheme using a set of visual transformation rules called visualcode. Being able to visualize intermediate steps of a running program makes each individual step and the entire execution process easier to comprehend. In addition to describing visualcode with examples, this article presents RainbowScheme’s user interface, implementation techniques, and evaluation results of using it in introductory programming courses.