Smalltalkとは?プログラミング言語を初心者にもわかりやすく解説

Smalltalkとは

Smalltalk(スモールトーク) は、 1970年代にゼロックス社のパロアルト研究所において、コンピュータ科学者のアラン・ケイ氏らによって開発されたプログラミング言語です。アラン・ケイ氏は、Smalltalkの発案者の一人であり、実際の開発にはダン・インガルス氏や、アデル・ゴールドバーグ氏ら、多数の技術者が関わっています。

アラン・ケイ氏は、「Object-Oriented(オブジェクト指向 )」という言葉を作った人物として知られますが、Smalltalk は、オブジェクト指向プログラミング言語として開発されました。

オブジェクト指向プログラミング言語とは、オブジェクト(対象)にメッセージを送信することで処理を実行する言語のことです。Smalltalkでは、ほとんどの処理をメッセージ式で記述するため、構文の種類が少なく言語仕様は小さくてシンプルです。

Smalltalkの特徴

Smalltalkには、以下の特徴があります。

  • オブジェクト指向プログラミング言語
  • ほとんどをメッセージ式で記述するため、言語仕様は小さくてシンプル
  • クラスライブラリが豊富
  • デバッグが強力
  • Smalltalk言語は、独自に構築された統合開発環境に組み込まれたかたちで提供される
  • Smalltalkの統合環境は、それ自体がSmalltalk言語で記述されているため、開発者自ら機能を拡張することも可能

Smalltalkは、オブジェクト指向プログラミング言語です。Smalltalkでは、ほとんどの処理をメッセージ式で記述するため、構文の種類が少なく言語仕様は小さくてシンプルです。

Smalltalk言語は、独自に構築された統合開発環境に組み込まれたかたちで提供されます。Smalltalkという名称は、単にプログラミング言語の名称を表す場合もありますが、統合開発環境の名称でもあります。

一般的な言語では、ソースコードをコンパイラなどの言語処理系で変換しないと動作確認できませんが、Smalltalkの統合開発環境では、 Smalltalk言語でコードを書いている途中で、専用ブラウザで動作確認して、デバッグをしながらスムースに開発を進められます。

Smalltalkの統合環境は、それ自体がSmalltalk言語で記述されているため、開発者自ら機能を拡張することも可能です。

Smalltalk はこんな場面で使われている

Smalltalk環境をベースにして開発されたなかで、良く知られているのはSqueak(スクイーク) です。

Smalltalk を学ぶメリット

これからプログラミング言語を学んで、どこかの企業への就職を希望する場合、 Smalltalk を学ぶことが最善の選択肢になるかどうかは何とも言えません。就職のしやすさ、需要の多さを考慮するなら、他の言語を学んだ方が良いかもしれません。

一方で、Smalltalkを習得することで、独自のキャリアを築いていける可能性はあるでしょう。Smalltalkを使う技術者を Smalltalkerと呼ぶことがありますが、Smalltalkerの集まるイベントに積極的に参加することで、志の高い優秀な技術者と知り合う機会を増やせるでしょう。

Smalltalkには、以下のメリットがあります。

  • 言語仕様が小さくシンプルで覚えることが少なくてすむという
  • Smalltalkの統合開発環境に慣れてしまえば、専用ブラウザで動作確認して、デバッグをしながらスムースに開発を進められる