#
Teachpacks

## Introduction

Teachers and professors often connect student code with libraries of advanced routines for graphics, networking, and so on. These libraries cannot be loaded using the load command, since they may use features not present in the student's language level.

DrScheme solves this problem through Teachpacks. These can use the full language, are loaded once per run of DrScheme, and are automatically invoked every time the user clicks Execute. DrScheme comes with several Teachpacks that implement libraries, such as support to play the game Mastermind. Several Teachpacks support extended exercises in our textbook, How to Design Programs. A growing number of other texts now provide Teachpack support.

Language levels and Teachpacks therefore provide the best of both worlds: adequate error messages for beginners, and advanced features to create interesting lessons and demonstrate applications.

## Teachpack for Graphics

One commonly used Teachpack is a beginners' graphics library. It provides a simple interface to the extensive GUI available in DrScheme (which is used to construct DrScheme itself).