#acl All:
== スクイークetoysって何 ==
----
=== Smalltalk (オブジェクト指向言語の元祖) ===
1960年代初頭
 . ゼロックスのパロアルト研究所でAlan KayのプロジェクトでSmalltalk言語が開発された。
 . 子供の教育にコンピュータを使うことを目的として考えられた。
1972年
 . Smalltalk-72
 . 最初にできたSmalltalkシステム。以後2年ごとに新しい版が出る。
1973年
 . ワークステーションALTOが作られた。
 . 当時としては革新的な特徴
  * ビットマップディスプレイ
  * マウス
  * イーサネット
1980年
 . Smalltalk-80
 . Smalltalkの最も有名なバージョン
1981年
 . Byte Magazine 8月号でSmalltalkが特集される
 . オブジェクト指向が流行りはじめる
1983年
 . Smalltalk-80システムのOfficial Release
1984年
 . Apple Smalltalk
 . !MacIntosh Plus上で動作するSmalltalk-80
----
=== Squeak (オープンソースのSmalltalk) ===
誰にでもプログラミングができる教育用ソフトウエアの要求にこたえるべく、1995年に開発が始まり、最初の版が1996年に公開された。
 . 基本的な部分はSmalltalk-80と同じ。
 . 画面の例。
 . {{attachment:squeak.png}}
SqueakはすべてがSmalltalkで記述されている。
 . Smalltalkのプログラムはバイトコードにコンパイルされる。
 . バイトコードはSmalltalk VM(バーチャルマシン)上で動作する。
 . {{attachment:squeak1.png}}
 . SmalltalkシステムはVMとシステムイメージでできている。
 . システムイメージはSmalltalkのクラスライブラリである。
 . クラスライブラリもまたSmalltalkをコンパイルしてできたバイトコードの集まりである。
 . Smalltalkプログラムをバイトコードに変換するコンパイラはSmalltalkで書かれている。
 . VMもSmalltalkで記述されている。
 . Smalltalkで記述されたVMはCに変換され、コンパイルされて環境ごとの実行ファイルができる。
 . SmalltalkからCへの変換もSmalltalkで記述されている。
 . {{attachment:squeak2.png}}
Squeakは移植性が高く、多くの種類のコンピュータやOS上で動作する。

ユーザがSqueakで書いたプログラムは、他のOS上のSqueakでも動作する。
----
=== eToys ===
SqueakにはMorphicと呼ばれるGUIフレームワークがあり、その上でタイルスクリプティングを行うことができました。
これを主たるインターフェースとした環境がeToysです。

eToysはSqueak上で動作しています。