This thesis describes the design and implementation of Smalltalk-80. The dialect of Smalltalk implemented is APLtalk.
An understanding of the procedural semantics of the Smalltalk-80 language is developed using the Contour Model of Block Structured Processes. Independent contour models are constructed for Smalltalk and APL. A prototype system is described which integrates both models. The implementation section of this thesis is concerned with the strategies used to implement mechanisms such as message passing, variable binding and context switching. The Smalltalk language is explained via examples.