環境は、 環境の実行方法として現実のハードウェアに依存している機械語命令を使わず、現実のハードウェアから独立した中間言語命令(仮想機械に対する機械語命令)を仮想機械により実行する仮想機械方式を採用している。 の中間言語命令は、全てイメージファイルというファイルに書き込まれ の仮想機械はそのイメージファイルを読み込んで 環境を実行する。
この仮想機械方式による の実行方法は の言語仕様にも含まれている。
イメージファイル.
イメージファイルは、 環境の実行状態をそのまま保存したファイルである。イメージファイルは 環境実行中に生成された全てのオブジェクトを直列化して保存することで 環境の実行状態を保存している。この直列化されたオブジェクトには、 の中間言語も含まれている。イメージファイルに含まれる中間言語命令は、 自身によって記述されたコンパイラーによってソースコードから翻訳された、バイト列のオブジェクトである。
仮想機械とブートストラップ.
実行時書き換え.
GUIツール.
準標準的なGUIツール.
GUIを使わないような特殊なものを除き、大半のSmalltalk環境では次のようなGUIツールが用意されている。
Smalltalkの開発ではこれらのツールを使って開発する事が半ば前提となっている。
Smalltalk環境内に存在する全てのクラスを(存在する場合は名前空間も)表示/編集できるツールで、Smalltalk開発において中核となるツールである。
言語としてのSmalltalk.
言語としての設計思想.
言語として が目指したもの。それは計算機を計算機の集合体として構築し、さらに計算機を構成する個々の計算機も計算機の集合体で構築するというように、再帰的な計算機を構築することであった。この再帰的な計算機を構築している無数の計算機は、個々の内部には干渉せずメッセージによる通信のみによって相互作用を発生させ目的の計算を完遂させる。
ここでいう計算機が ではオブジェクトという形で実装された。
ここで言及された再帰という概念は、オブジェクトの成立以外にも の至るところに影響を与えている。
言語仕様の種類.