Language Levels: Introduction

Beginners make mistakes, and need feedback customized to their level of understanding. The syntax of Scheme is so permissive that most Scheme implementations are notoriously bad at reporting errors in useful terms.

DrScheme overcomes this difficulty by providing a hierarchy of language levels. The hierarchy matches the natural introduction of Scheme in :

These levels impose other syntactic and semantic restrictions based on common mistakes we have observed students make over the years. Each level tries to report errors in terms appropriate to that level.

DrScheme will start in the Beginning Student level, which is a severe restriction of the full Scheme language. If you (or your class) aren't using language levels, you should immediately switch DrScheme to Standard Scheme (or your instructor's suggested alternative) using the Choose Language menu item.