Smalltalk

作成日 : 2023-02-16
最終更新日 :

Smalltalk とは

Smalltalk とは純粋オブジェクト指向プログラミング言語、および統合プログラミング環境のことである。

処理系

Smalltalk 処理系の実装のうち、無料で使えるものとして知られているのは Pharo だろう。この Pharo を Windows 11 にインストールしてみよう。 Pharo(pharo.org) に従い、インストールしてみる。

まず、Download のボタンをクリックすると、Pharo Download のページに遷移する。ここで、Download Phano Launcher の Windows のボタンをクリックすると、 Launcher がダウンロードできる。ダウンロード後に Launcher を起動する。

ここで、Launcher は、Smalltalk を動作させる仮想機械(Virtual Machine、VM)とその仮想機械上で動作する環境であるイメージを合わせて管理するツールである。

Launcher を起動すると、上部にアイコンつきツールバーのある Pharo Lancher という画面が表示される。このツールバーの左端の New をクリックすると、 Pharo Launcher - Image Creation というポップアップウィンドウが表示される。ウィンドウは次の通りだ。 細部は当然ながら違う。

1. Choose a template category:
Template
Photo Mooc
Official distributions
以下略
2. Choose a template:
Pharo 11.0-64bit(development version, latest)
Pharo 11.0-32bit(development version, latest)
Pharo 10.0-64bit(stable)
Pharo 10.0-32bit(stable)
(以下略)
Image name:

Image description:

Initialization script:

ここで、1. Choose a template category:から Official distributions を選び、次に 2.Choose a template: から Pharo 10.0-64bit(stable) を選ぶ(一般には最新の stable を選べばいいだろう)。そして、右下の Create image ボタンをクリックする。するとイメージのダウンロードが始まる。 ダウンロード中は HTTP Progress: Transfering... nn% というプログレスバーが表示される。ダウンロードが完了すると、 Pharo Launcher の上部の Name 欄に今しがたダウンロードしたばかりの Pharo 10.0 - 64bit(stable) の行が表示されている。

この行をクリックしてツールバーの Launch をクリックする。またダウンロードが始まり、今度は新たなウィンドウが起動する。 ウィンドウ名は、%USERPROFILE%Documents\Pharo\Images\Pharo 10.0 - 64bit (stable).image である。

こちらのウィンドウでは、まず日本語のフォントが読めるようにする。メニューバーの[Pharo] から [Setting Ctrl+O+S]を選び、 次に Appearance を、さらに Standard fonts を選ぶ。Default では Source Sans Pro Regular 10 になっているので、 ここをクリックして Font for defaultFont ポップアップメニューを開く。全部で 4 列のテキストエリアが上部に、 左下にはフォントの表示状態が、右下にはボタンが並んでいる。右下ボタン群のうち [Update] ボタンをクリックしてシステム内のフォントも選べるようにする。 [Update] ボタンをクリックしてもテキストエリア左のフォントが表示されない場合はいったん [Ok] ボタンを押して再度開きなおすとフォントが更新されているはずだ。 ここでは仮に、フォント-書体-サイズ-言語の組み合わせで、Meiryo UI - Regular - 9 - English の組合せで [Ok] ボタンをクリックする。 そして、Default の行にある[Force all] のボタンをクリックして Code 以下のフォントもすべて Default と同じにする。そして Font for defaultFont ポップアップメニューを閉じる。

日本語が読めるようになることを確かめるために、メニューバーの [Browse] から [Playground] を選ぶ。テキストエリアに日本語が入力できれば成功だ (私の環境では日本語が表示できるが、IME の関係なのか変換の過程が表示されない)。イメージを終了するには、[Pharo] から[Save and Quit]を選ぶ。

Pharo by Example 9

Pharo by Example 9 という本がある。Pharo を使うにはこの本を読まないといけないようだ。ただ、私は英語が読めない。 しかたがないので、目次だけ対比してみた。 2013-01-02 版の和訳 (github.com) を参考にした。追って詳しいことを書きたい。

About this bookこの本について
Getting Started with PharoPharo はじめの一歩
A quick tour of PharoPharo 早巡り
Finding information in PharoPharo の情報検索
A first tutorial: Developing a simple counter最初のチュートリアル: 単純なカウンタ
Building a little game小さなゲーム作り
Publishing and packaging your first Pharo project最初の Pharo プロジェクトの公開とパッケージング
Syntax in a nutshell構文の要点
Understanding message syntaxメッセージ構文を理解しよう
The Pharo object modelオブジェクトモデル
Traits: reusable class fragmentsトレート: 再利用可能なクラスの断片
SUnit: Tests in PharoSUnit: Pharo のテスト
Basic classes基本的なクラス
Collectionsコレクション
Streamsストリーム
Morphicモルフィック
Classes and metaclassesクラスとメタクラス
Reflectionリフレクション

saluton, mondo

エスぺラントで saluton, mondo とは、英語の hello, world に当たる。これを Pharo でやってみよう。

Pharo の環境で、[Browse] → [Playground] として Playground ウィンドウを出す(以前は Workspace だったはず)。 そしてもう一つ、[Browse] → [Transcript] として Transcript ウィンドウを出す。これで準備ができた。 Playground ウィンドウで次のように入力する。
Transcript show: 'saluton, mondo'; cr.
そしてこの行を選択した状態で Playground ウィンドウ左上のアイコンの [Do It] をクリックする。すると Transcript ウィンドウに、 saluton, mondo が表示される。すばらしい。

リンク集

まりんきょ学問所コンピュータの部屋 > Smalltalk


MARUYAMA Satosi