Scheme Programming/Why Learn Scheme?
Scheme is an excellent language in which to learn the principles of most languages. It's built with a small syntax, and abstracts the programmer far enough away from the machine to effectively express algorithms and ideas simply and concisely.
It is used not only as a standalone programming language but also as scripting language in Gimp (Script-Fu). Many universities use a variation of Scheme in their introductory computer science courses, including the University of British Columbia and the University of Waterloo. The frequently used textbook Structure and Interpretation of Computer Programs uses Scheme as its language.
Scheme is frequently praised for a syntax that, while quite powerful when used properly, is very easily interpreted, even by other Scheme programs. In fact, many Scheme implementations are written in Scheme, which operate through metacircular evaluation.