環境と言語
出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2021/05/26 08:27 UTC 版)
Squeakも他のSmalltalk環境同様、環境記述およびデータ記述言語、およびユーザースクリプティング言語としてSmalltalkを使用できるようになっている。また、非常に古い実装に基づいてはいるものの、Smalltalk環境が当初から備えていたクラスブラウザ、オブジェクトインスペクタ、テキストエディタ、デバッガなどを有機的に連動させるオブジェクト指向プログラミングのための機構は、ベースとなったApple Smalltalkからそのまま環境内に引き継がれ、利用可能な状態にある。 Squeakの仮想機械(Smalltalkバイトコードインタプリタ)はSmalltalkのサブセットで記述されており、それをC言語に変換するトランスレータを用いて生成される。この独特の仮想機械開発スタイルはSqueakに高い移植性をもたらしている。実際、Squeakは各種のUNIX、Windowsをはじめ、MS-DOS、BeOS、TRONなど、Palm OS以外のメジャーなプラットフォームに移植されており、めずらしいところでは、シャープのZaurus(旧Zaurus、もしくは最近のLinux Zaurus)で動作するSqueak仮想機械も存在する。移植性を重視した初期の同仮想機械は、他の商用SmalltalkやJavaなどで行なわれる動的コンパイル(JITコンパイル)を欠いていたが、Eliot Miranda氏が新たに手がけたCogVMと呼ばれる次世代仮想機械では同機構も取り入れられ従来より5-10倍の性能向上を果たしている。 Squeak環境にはSmalltalkとは別に、Squeak eToys(あるいは Etoy、SqueakToysなど)と呼ばれるプロトタイプベースオブジェクト指向プログラミング言語・環境に近い仕組みを持つ非開発者向けプログラミング環境(タイルスクリプトシステム、あるいは単にスクリプトシステムと呼称)が実装されている。Morph(モーフ)と呼ばれる可視化に適した機構を組み込んだオブジェクトに対し、その属性(動き、色、形、振る舞いなど)を変化させる手続きを、パネル状のパーツをドラッグ&ドロップで組み合わせで表現できる。 こうした特徴から同スクリプトシステムは、プログラミング未経験者のほかに、キーボードの扱いに馴れていない低年齢層ユーザーにも容易に扱うことができる。アラン・ケイの長年の共同研究者であるキム・ローズらは、この機構が低学年向けのコンピュータ・リテラシおよび自然科学教育に活用できることに早くから目を付け、米日独での教育機関との共同プロジェクトを立ち上げてその高い教育効果を示しつつある。
※この「環境と言語」の解説は、「Squeak」の解説の一部です。
「環境と言語」を含む「Squeak」の記事については、「Squeak」の概要を参照ください。
- 環境と言語のページへのリンク