TechCraft – エンジニアのためのスキルアップメモ

エンジニアのスキルアップを少しでも加速する技術ブログ

Smalltalk で Hello World

Smalltalkで「Hello, World!」を表示する方法【初心者向け入門ガイド】

Smalltalkは、純粋なオブジェクト指向プログラミング言語として1970年代に誕生しました。そのシンプルかつ強力な構文は、後の多くの言語(Ruby, Python, Javaなど)に大きな影響を与えました。

本記事では、Smalltalkの開発環境の導入から、最初の「Hello, World!」プログラムの実行方法までを、丁寧に解説します。


1. Smalltalkとは?

Smalltalkは、すべてがオブジェクトとして設計された非常にシンプルな構文と、インタラクティブな開発環境(イメージベース)を特徴とするプログラミング言語です。

以下のような特徴があります:

  • 全てがオブジェクト:数値、文字列、クラスすらもオブジェクト
  • メッセージパッシング:オブジェクト間のやり取りはすべてメッセージ送信で行う
  • ライブ環境:REPLベースでリアルタイムにコード評価が可能
  • GUIベースの開発ツール:コード編集や実行がビジュアルに可能

Smalltalkは教育用途にも適しており、コード構文が非常に直感的で学びやすい点が魅力です。


2. Smalltalk開発環境の構築

Smalltalkには複数の実装がありますが、今回は初心者向けにおすすめの Pharo を使用します。

Pharoとは?

Pharoは、Smalltalkのモダンな実装の一つであり、活発に開発されているオープンソースプロジェクトです。

インストール手順

  1. 公式サイトにアクセスして、OSに合ったバージョンをダウンロード
    Pharo公式サイト

  2. ダウンロードしたZIPファイルを展開し、Pharoの実行ファイルを起動します。

  3. 初回起動時に環境が自動で構築され、Smalltalkの開発環境が立ち上がります。


3. 「Hello, World!」の書き方と実行

Smalltalkでは、コードをワークスペースというウィンドウに書いて評価(execute)するのが一般的です。

最小のHello Worldコード

'Hello, World!' displayNl.

説明

  • 'Hello, World!' は文字列オブジェクト
  • displayNl は「表示して改行する」というメッセージ
  • ドット(.)で文の終わりを示します

このコードをワークスペースに入力し、右クリックまたはショートカットで「do it(実行)」を選ぶと、「Hello, World!」が出力されます。


4. よくあるトラブルと対処法

エラー:文字列が表示されない

原因do itではなくprint itを選んでいる可能性があります
対処do itは処理を実行し、副作用(表示など)を起こします。表示したい場合はこちらを使いましょう。

エラー:評価環境が起動しない

原因:Pharoのイメージが破損しているか、起動に失敗している
対処:Pharoを再インストールするか、最新版のイメージファイルを再度ダウンロードしてください。


5. Smalltalkをさらに学ぶには

Smalltalkの学習を続けるには、以下のテーマに進むとよいでしょう。

  • ブロック構文とクロージャ
  • クラスの定義と継承
  • コレクション操作(Array, Dictionaryなど)
  • GUIプログラミング(Morphic)

PharoはIDEとしても非常に優れており、オブジェクトを「触って」学べる体験が得られます。


6. まとめ

Smalltalkでの「Hello, World!」は、非常にシンプルで直感的です。

'Hello, World!' displayNl.

この一行だけで、Smalltalkオブジェクト指向的な哲学とメッセージパッシングの概念に触れることができます。

今後は、オブジェクト同士の関係性や、メッセージの受け渡しを通して、より深いSmalltalkの世界を体験していきましょう。


7. 参考リンク