スクイークetoysって何

誰にでもプログラミングができる教育用ソフトウエアの１つです。

元になったのはSmalltalkで５０年の歴史があります。

スクイークはSmalltalkのオープンソース版です。

etoysはスクイーク上で動作するGUIプログラミング環境です。

計算機とパソコンの歴史

1942年

世界初の電子計算機 ABC

1949年

世界初のプログラム内蔵式電子計算機 EDSAC

1971年

マイクロコンピュータ 4004 CPU

1977年

パソコン Apple II

1983年

GUIパソコン リサ

翌年にはマッキントッシュが発売された。

smalltalkはオブジェクト指向とGUIの点で多くの影響を与えている。

Smalltalk (オブジェクト指向言語の元祖)

1960年代初頭

ゼロックスのパロアルト研究所でAlan KayのプロジェクトでSmalltalk言語が開発された。

子供の教育にコンピュータを使うことを目的として考えられた。

1972年

Smalltalk-72

最初にできたSmalltalkシステム。以後２年ごとに新しい版が出る。

1973年

ワークステーションALTOが作られた。

当時としては革新的な特徴

ビットマップディスプレイ

マウス

イーサネット

1980年

Smalltalk-80

Smalltalkの最も有名なバージョン

1981年

Byte Magazine ８月号でSmalltalkが特集される

オブジェクト指向が流行りはじめる

1983年

Smalltalk-80システムのOfficial Release

1984年

Apple Smalltalk

MacIntosh Plus上で動作するSmalltalk-80

Squeak (オープンソースのSmalltalk)

誰にでもプログラミングができる教育用ソフトウエアの要求にこたえるべく、1995年に開発が始まり、最初の版が1996年に公開された。

基本的な部分はSmalltalk-80と同じ。

画面の例。

Etoys

SqueakにはMorphicと呼ばれるGUIフレームワークがあり、その上でタイルスクリプティングを行うことができました。

これを主たるインターフェースとした環境がEtoysです。

EtoysはSqueak上で動作しています。 以下の説明でシステムイメージが異なるだけ。

動作

ユーザがSqueakで書いたプログラムは、他のOS上のSqueakでも動作します。

Smalltalkのプログラムはバイトコードにコンパイルされる。

バイトコードはSmalltalk VM(バーチャルマシン)上で動作する。

バイトコード、システムイメージはOS等に依存せず共通です。

VMはOSに依存。

Squeakの移植

Squeakは移植性が高く、多くの種類のコンピュータやOS上で動作する。

SmalltalkシステムはVMとシステムイメージでできている。

システムイメージとVMをSmalltalkで記述し作成する。

システムイメージ

システムイメージはSmalltalkのクラスライブラリである。

クラスライブラリはSmalltalkをコンパイルしてできたバイトコードの集まりである。

Smalltalkプログラムをバイトコードに変換するコンパイラはSmalltalkで書かれている。

したがって、バイトコードはSmalltalkで作成できる。

VM(バーチャルマシン)

VMもSmalltalkで記述されている。

Smalltalkで記述されたVMはCに変換され、コンパイルされて環境ごとの実行ファイルができる。

SmalltalkからCへの変換もSmalltalkで記述されている。

したがって、Smalltalkで処理の後CでコンパイルすればVMが作成できる。

青矢印はSmalltalkで処理、白矢印はCでコンパイル。

SqueakはすべてをSmalltalkで記述することで移植性を高めている。