通信用語の基礎知識 IPv4
戻る
参加者募集中

Smalltalk

辞書:電算用語の基礎知識 プログラミング言語編 (PTPROGN)
読み:スモールトーク
外語:Smalltalk 英語
品詞:固有名詞

記事の有効期限について

この記事は更新履歴情報のない、旧形式項目です。久しく更新されておらず、古い記述を含む可能性があります。

更新すべき内容を見つけた場合は、ページ末の報告フォームよりお知らせください。また、現在当サイトは編集仲間を求めています

XeroxのPalo Alto研究所が開発した初期のオブジェクト指向プログラミング言語。しばしば最初のオブジェクト指向プログラミング言語であると説明されるが、実際にはその前にSimulaという言語が存在したので、これは正しくない。

膨大なクラスライブラリとそれを閲覧するためのシステムブラウザーをはじめ、アプリケーションランチャやデバッガーなど、一通りのツールが実行環境に含まれている。アプリケーション開発は環境中の既存のクラスライブラリに自分の作成したクラスを追加していくことで行なう。

全てがオブジェクトであり、あらゆる操作はオブジェクトに対しメッセージを送ることで行なう。

メッセージの解決には動的束縛を用いるため、C++のような強い型付けのある言語と異なり、あらゆるオブジェクトに任意のメッセージを送ることが可能である。勿論、送られたメッセージを、そのレシーバーが理解できなかったときはエラーとなる。

プログラミング例
x := 1.
10 timesRepeat: [ x := x + 1 ].
  
10という数値オブジェクトに対し, [ x := x + 1. ] というブロック式オ
ブジェクトを伴ったメソッド timesRepeat: を送ることで, 10回の繰り返
しを行なっている.
  
x := 1.
y := 0.
(x > y) ifTrue: [ ^x := x - 1 ].
  
x に y を引数とした > というメッセージを送り, その結果の真偽オブ
ジェクト(true もしくは false)に [ ^a := a - 1 ] というブロック式オ
ブジェクトを伴った ifTrue: メッセージを送る.
>のようなメッセージは, 結果によって true(Trueクラスの唯一のインス
タンス)かfalse(Falseクラスの唯一のインスタンス)を返すように定義さ
れており, また ifTrue: メッセージは Trueクラスでは引数ブロックを評
価するように定義され, False クラスでは何もしないように定義されてい
る.

コメントなどを投稿するフォームは、日本語対応時のみ表示されます


KisoDic通信用語の基礎知識検索システム WDIC Explorer Version 7.03 (16-May-2019)
Search System : Copyright © Mirai corporation
Dictionary : Copyright © WDIC Creators club