Preliminary version from Aug 10, 2007 with some additions from Jan 01, 2016.
Distribution is encouraged, comments are welcome and should be mailed to the editor.
This is a tutorial from 2007 which covers a topic that has lost most of its former importance. It is kept available for the benefit of those who seek in-depth information about out-dated versions of Smalltalk.
The tutorial covers the use of the MVC graphical user interface in Squeak. It also covers the use of Smalltalk in general, but it does not cover the use of the Morphic GUI.
Recommended version of Squeak: 3.7 [more about versions]
MVC is seriously damaged in all newer versions of Squeak. It is therefore recommended that you install the version 3.7 from 2004. Here is an explanation how to do that.
To try the examples of this tutorial, you have to create and to enter an MVC project.
This depends on both your knowledge and your needs:
It is not difficult at all to give you a few simple demo programs. It is much more difficult to develop the essential ideas of MVC with a set of carefully built examples. A preliminary version of this tutorial was merely a collection of simple demo programs. This version tries to give you a more carefully designed introduction to the essential ideas of MVC.
The first publication about the MVC metafor:
Here you find papers written in 1979 by Trygve Reenskaug. The paper from May 1979 describes work that was done at Xerox with an early Smalltalk system. This is not a tutorial, but certainly it is inspiring reading.
A Tutorial written by Steve Burbeck:
A Tutorial written by Stephen Pope and Glenn Krasner:
This was the first really good explanation of MVC. Regrettably, the examples are for Smalltalk-80 and some methods of Smalltalk-80 are not available in Squeak. Nevertheless, I recommend this tutorial. For your convenience, I included change sets for the examples that are modified for use with Squeak.
A book about Smalltalk-80:
LaLonde, Pugh: Inside Smalltalk II
Prentice Hall 1991
This book gives an in-depth presentation of the MVC framework as it was implemented for Smalltalk-80. It MVC framework of Squeak is very close to MVC for Smalltalk-80.
Also a book about Smalltalk-80:
An Introduction to Object-Oriented Programming and Smalltalk
This is also an in-depth presentation of Smalltalk-80. Chapters 9 and 11.4 contain interesting stuff about MVC.
There is a lot of helpful literature available in the Internet. You may wish to check these internet pages:
Squeak itself has its own internet presence at
A collection of tutorials for various Smalltalks can be found at
For Smalltalk in general, please have a look at:
Here you find complete books about various Smalltalks. Some of these books cover Smalltalk implementations that are quite different from Squeak, but all these books can be used to learn a lot about Smalltalk in general. Most of the books on this site are in PDF format.
A very complete generated documentation:
This documentation contains all class comments and all method comments of the Squeak 3.2 image. You can download the complete documentation or you can read it online.
A detailed explanation of change sets and the use of the change sorters:
This work is licensed under a Creative Commons Attribution 4.0 International License.