『Macintosh Programmer’s Workshop Object Pascal 日本語版』を読んでみる

# はじめに
長い間探していた**『Macintosh Programmer’s Workshop Object Pascal : 日本語版』**が入手できたので、これを読んでみようという記事です。

# Macintosh Programmer’s Workshop (MPW) の日本語ドキュメント
Macintosh Programmer’s Workshop (MPW) の日本語ドキュメントは ASCII から出版されています。

 - [検索結果 (国立国会図書館オンライン)](https://ndlonline.ndl.go.jp/#!/search?title=Macintosh&creator=Apple%20Computer%20Inc&publisher=%E3%82%A2%E3%82%B9%E3%82%AD%E3%83%BC&excludeVolume=2&excludeItem=3)

## Macintosh Programmer’s Workshop Object Pascal : 日本語版
大型本です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/c4bbe9ce-5c6e-ab55-50a6-53bfaf2e5c32.png)

| タイトル | 著者 | ISBN-10<br>(Amazon) |出版年|
|:--|:--|:-:|:-:|
| Macintosh Programmer’s Workshop<br>Object Pascal : 日本語版 | Apple Computer (著)<br>アップルコンピュータジャパン (訳) |  [4756109519](https://www.amazon.co.jp/dp/4756109519/)  | 1991/12/1 |

帯には `Pascal`、`Macintosh の公式開発言語` というパワーワードが (w
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/97112559-60e2-fd1f-5371-d540fc59cfea.png)
MPW マニュアル日本語版の第 3 弾という事ですが、第 1 弾と第 2 弾は次の書籍のようです。

| タイトル | 著者 | ISBN-10<br>(Amazon) |出版年|
|:--|:--|:-:|:-:|
| Macintosh Programmer's Workshop<br>Development Environment : 日本語版 vol.1 | Apple Computer (著)<br>アップルコンピュータジャパン (訳) |  [4756109454](https://www.amazon.co.jp/dp/4756109454/)  | 1990/12/1 |
| Macintosh Programmer's Workshop<br>Development Environment : 日本語版 vol.2 | Apple Computer (著)<br>アップルコンピュータジャパン (訳) |  [4756109462](https://www.amazon.co.jp/dp/4756109462/)  | 1990/12/1 |
| Macintosh Programmer’s Workshop<br>C : 日本語版 | Apple Computer (著)<br>アップルコンピュータジャパン (訳) |  [4756109470](https://www.amazon.co.jp/dp/4756109470/)  | 1990/12/1 |

MPW そのもののリファレンスマニュアルとして 1988 年に出版された**『Macintosh Programmer’s Workshop 3.0 Reference』**の日本語版の存在を仄めかす記述があるのですが、国立国会図書館を検索してもヒットしませんでした。実の所、『Macintosh Programmer’s Workshop 3.0 Reference』は『Macintosh Programmer's Workshop Development Environment : 日本語版 vol.1 & vol.2』に含まれているので、これを指しているのだろうと思われます。

海外の Apple 関連の書籍では**『Macintosh Programmer's Workshop Pascal 3.0 Reference』**を引用してあるものがありますが、『Macintosh Programmer's Workshop Pascal 3.0 Reference』も『Macintosh Programmer’s Workshop Object Pascal』のトピックとして含まれています。何故このような事になっているのかはよく解りませんが、トピックと本のタイトルが別になっているため大変混乱します。

本書のみで Pascal を覚えられるかというとそうではなく、具体的なコード例が殆ど掲載されていない事もあって、別の Pascal の書籍が必要になると思います。\[その他のリファレンス資料\] のページには補足資料として『[The American Pascal Standard: with Annotations](https://qiita.com/ht_deko/items/091661d6fa3d72700a56#cansiieee-770x397-1983-ansi-pascal)』と『[J&W (第 3 版)](https://qiita.com/ht_deko/items/3086b7cff08928eca7a9#pascal-pascal)』が挙げられています。

Object Pascal については構文のブロック図もあるため、Delphi 等を先に知っていれば容易に理解できるかもしれませんが、たった 11P の解説でオブジェクト指向プログラミングのすべてを理解するのは無理だと思います。そして章目次には...
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/82c15390-858a-8db1-645a-c6a2fc0e6691.png)

> オブジェクト指向プログラミングの理論について十分に勉強するには、序文で挙げた Kurt Schmuker 著の Object-Oriented Programming for the Macintosh を読んでください。

翻訳版であるところの『[オブジェクト指向プログラミング〈上巻〉](https://qiita.com/ht_deko/items/cd245180363e1911afa7#%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE)/[〈下巻〉](https://qiita.com/ht_deko/items/770f2db98c9cf3e8ef7b#%E5%8F%82%E8%80%83%E6%96%87%E7%8C%AE)』も読めと書かれています。MacApp というフレームワークを**使う**だけであればオブジェクト指向プログラミングについては最小限の知識さえあればいいのでしょうけれど...。

他の Pascal との差異は **付録 A「MPW 3.0 Pascal と他の Pascal」** に纏められています。比較対象は ANSI/IEEE 770x3.97-1983 なのですが、これは ISO 7185:1983 (標準 Pascal) の 水準 0 とほぼ同じ規格なので、ISO/IEC 7185 の規格表や『[J&W (第 3 版以降)](https://qiita.com/ht_deko/items/3086b7cff08928eca7a9#pascal-pascal)』を持っていれば相違点を調べるのは容易です。

書籍としては正直イマイチですが、**Object Pascal の資料としての価値は唯一無二**です。

個人的な評価: ★★★★☆

**See also:**

 - [Wirth 先生の邦訳本を読んでみる (Qiita)](https://qiita.com/ht_deko/items/3086b7cff08928eca7a9)
 - [サイエンス社の Information & Computing シリーズから Pascal 関連の書籍を読んでみる (Qiita)](https://qiita.com/ht_deko/items/93899a6fe0c2f46cc945)


## 希少性について
MPW のドキュメントとしては **『Introduction to MPW』** や **『Building and Managing Programs in MPW』**があり、
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/d00ae95f-72d4-b197-51d9-09fa5a6a4dd3.png)
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/59a43e16-4c56-f89d-c0ff-5aec2df47964.png)
68k Mac 用の C/C++ ドキュメントは**『SC/SCpp: C/C++ Compiler for 68K Macintosh』**があります。いずれも PDF で読めます。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/2eadb86f-5e81-f82e-866e-0c990fb4ea0a.png)

 - [MPW Reference Books (developer.apple.com ミラー)](http://mirror.informatimago.com/next/developer.apple.com/tools/mpw-tools/books.html)

ですが、日本語版/英語版に限らず、Object Pascal のドキュメントは貴重だったのです。なにせ Apple が「Pascal のドキュメントはない」と言っていたのですから。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/3a149c56-aa09-0bd4-e9ef-04784749a629.png)

 - [Pascal - Frequently Asked Questions (developer.apple.com ミラー)](http://mirror.informatimago.com/next/developer.apple.com/tools/mpw-tools/books.html)

裏を返せば、MPW C/C++ を使う上ではドキュメントで困る事はないという事です。PDF の方が新しいドキュメントなので『MPW Development Environment: 日本語版』や『MPW C: 日本語版』を所持する必要性はあまりないでしょう。C / C++ の言語仕様を調べるためなら尚更です。
![image.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/21785/3b1e96bf-ab10-9c0a-79e6-4289b716754d.png)
MPW Pascal が Object Pascal の源流だからこそ『Macintosh Programmer’s Workshop Object Pascal 日本語版』には特別な価値があると思っています。

# おわりに
故 Larry Tesler 氏が書いた **"Object Pascal Report"** を読むのは不可能に近く、Object Pascal のルーツを探るにはどうしても『Macintosh Programmer’s Workshop Object Pascal』を読む必要がありました。

実際に実装された最初の Object Pascal の公式なドキュメントを入手できた事は Pascal マニアとしては嬉しい限りです。

**See also:**

 - [Pascal へのオブジェクト指向拡張の歴史と Delphi (Qiita)](https://qiita.com/ht_deko/items/ff2d90c9174290583377)
 - [Macintosh Programmer's Workshop (MPW) Object Pascal の簡単な使い方 (Qiita)](https://qiita.com/ht_deko/items/de6838acd1d22722b674)
 - [Pascal / Delphi 関連の書籍を読んでみる (まとめ) (Qiita)](https://qiita.com/ht_deko/items/34bbcdea27ce224079e0)