LoginSignup
1
2

PUG BOOKS の Turbo Pascal 関連書籍を読んでみる

Last updated at Posted at 2023-10-29

はじめに

PUG BOOKS の Turbo Pascal 関連書籍を購入して読んでみました。

『Turbo Pascal』は ver4.0 以降、CP/M のサポートをやめているので、日本における「Turbo Pascal ver4.0 以降の書籍」というのは、主に PC-9801 シリーズ用 MS-DOS 版の書籍を指しています。

読んでみる。

PUG BOOKS の Turbo Pascal の関連書籍には次のようなものがあるようです。

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal プログラミング・マニュアル ボーランドインターナショナル(編)
マイクロソフトウエアアソシエイツ(訳)
4880631205 1984/6/25
Turbo Pascal トレーニングマニュアル 小林 侔史ひとし 4880631191 1986/4/15
Turbo Graphics 安斎 利洋, 伊吹 竜 4880632759 1987/3/1
Turbo Pascal エキスパートマニュアル 小林 侔史 4880632740 1987/6/10
Turbo Pascal プログラミングテクニック 金子 守宏 4880634824 1988/12/20
Turbo Pascal ver.4 トレーニングマニュアル 小林 侔史 4880634492 1988/8/1
TURBO PASCAL プロフェッショナルマニュアル 吉田 義人 4880634913 1988/11/1
Turbo Pascal ツールマニュアル グループ SPUG 4880635022 1988/12/1
Turbo Pascal ver.5 トレーニングマニュアル 小林 侔史 4880635472 1989/4/1
Turbo Pascal ver.5.5 トレーニングマニュアル 小林 侔史 4880638889 1990/04/20
Turbo Graphics: Turbo Pascal ver.5 対応 安斎 利洋, 伊吹 竜 4880639575 1990/8/1
Turbo Pascal ver.6 トレーニングマニュアル 小林 侔史 4796602038 1991/9/1
Turbo Pascal ver.6 エキスパートマニュアル 小林 侔史 4796601597 1991/8/15

・Turbo Pascal プログラミング・マニュアル

マイクロソフトウエアアソシエイツによる Turbo Pascal のマニュアルです。ver 3.0 までの製品にも付属しており、一般販売もあったようです。

この書籍は PUG BOOKS シリーズではないのですが、発行所が同じなので同じカテゴリーにしてみました。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal プログラミング・マニュアル ボーランドインターナショナル(編)
マイクロソフトウエアアソシエイツ(訳)
4880631205 1984/6/25

書評

公式マニュアル 1。「訳がおかしい所がある」と聞いていたが、実際に読んでみてあまり気になる所はなかった。

内容は『Turbo Pascal ver1.0』のマニュアルで、時期的には『Turbo Pascal ver2.0』発売後なのだけれど、ver2.0 で実装された機能については触れられていない。そもそも『Turbo Pascal ver2.0 英語版』のマニュアルですら、当初は 『Turbo Pascal ver1.0』のマニュアルそのままだったと聞く。『Turbo Pascal ver3.0』には本書と差分の冊子 2 が付いてきたようだ。

内容についてだが、公式マニュアルなのは言うまでもなく、CP/M-80 固有、CP/M-86 固有、MS-DOS 固有の情報があり、それが日本語で読めるのだから、Turbo Pascal 1~3 を使うのであれば持っておいて損はない。

P.208 の MOV AL,[BP-1]MOV AL,[BP+4] の間違いです。

『TURBO PASCAL プログラミング・マニュアル』は国立国会図書館デジタルコレクションで読む事ができます。書籍の閲覧には国立国会図書館の利用者登録 (本登録) が必要です。

対象: Turbo Pascal 1.0 (~3.0)
個人的な評価: ★★★★★

・Turbo Pascal トレーニングマニュアル

Turbo Pascal 3.0 を対象とした入門書です。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal トレーニングマニュアル 小林 侔史 4880631191 1986/4/15

書評

『Turbo Pascal』の入門書。Pascal や Turbo Pascal の文法については『PASCAL』『Turbo Pascal プログラミング・マニュアル』を軽く眺めてからの方が理解が早いと思う。CP/M 版の事もわずかに触れられている。

Embarcadero が『Turbo Pascal ver3.0』をアンティークソフトウエアとして無償公開しているが、『Turbo Pascal ver3.0』のマニュアルが入手できなくて困っているのなら本書を探すといいかもしれない。

対象: Turbo Pascal 3.0
個人的な評価: ★★★★★

See also:

・Turbo Pascal エキスパートマニュアル

Turbo Pascal 3.0 を対象とした書籍です。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal エキスパートマニュアル 小林 侔史 4880632740 1987/6/10

書評

プログラミングテクニック集。MS-DOS かつ PC-9800 シリーズ向けなので、CP/M 版を使っている場合には読む所が少ない。2、3、6、7、10 章は MS-DOS 固有。IBM PC 用にはそのまま使えないコードもあるだろうが、考え方は同じなので役に立つ事も多いと思う。

テーマがバラバラな気はするが、読んでいて面白い。

対象: Turbo Pascal 3.0 (MS-DOS: PC-98)
個人的な評価: ★★★★★

・Turbo Pascal プログラミングテクニック

Turbo Pascal 4.0 を対象とした書籍です。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal プログラミングテクニック 金子 守宏 4880634824 1988/12/20

書評

皆さんは『やさしいCプログラミング』という書籍をご存じだろうか?

詳細はリンク先に譲るとして、『やさしいCプログラミング』は有名な問題作であり、著者が C 言語を Modula-2 風味で書いている 事に批判が集まっている。

さて、本書の話に戻るが、掲載されているコードの右端に並ぶ begin end は何だろうか?…そう、本書は『やさしいCプログラミング』を遡る事 8 年前にやってしまっているのである。

image.png

例を幾つか挙げる。

procedure の例
procedure Hoge;
begin

  ...
                                                                                end; {
end of Hoge;                                                                    }
if 文の例
if a > 0
  then
                                                                                begin
  ...
                                                                                end
  else
                                                                                begin
  ...
                                                                                end; {
endif;                                                                          }
case 文の例
case a of
 1: ;
 2: ;
 3: ;                                                                           end; {
endcase;                                                                        }

コード右端の begin end はワードラップのミスではなく、筆者曰く「どの end がどの begin に対応しているか分かりにくい (P.12)」のだそうだ。そこで "臭いものに蓋をする" ではないが、begin end を目に入らない位置に移動している。

そして、ただ単純に begin end を抜くとブロックの整合性が採れないため、endif やら endcase やらを コメントで 書いている…つまり 著者は (Turbo) Pascal を Modula-2 風味で書いている…とても頭が痛い。

ブロックの見通しが悪いなら J&W スタイルにして、インデントで判断すればいいだけだと思うのだが…🤔

肝心の内容についてだが、実践的なライブラリやツールが書かれていてとても参考になる。とても参考になるのだがコードを読む気にならない。素晴らしく美味しい豆腐を使った湯豆腐の鍋にパクチーを入れられた気分だ。

対象: Turbo Pascal 4.0 (MS-DOS: PC-98)
個人的な評価: ★★★★☆

・Turbo Graphics: Turbo Pascal ver.5 対応

Turbo Pascal 5.0 を対象とした書籍です。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Graphics: Turbo Pascal ver.5 対応 安斎 利洋, 伊吹 竜 4880639575 1990/8/1

書評

PC-98 シリーズ用 MS-DOS 向けなので、Turbo Pascal 付属のライブラリを使ってあるのかと思ったら、硬派な事にグラフィックユニットは自作だった。前版を読まずに本書を読んだが、前版から自作しているのだろう。

内容に関しては『アルゴリズム + データ構造 = プログラム (Pascal)』にあるようなリサージュ図形などの他に、タートルグラフィック (自作)、フラクタル図形、バンプマッピング、マンデルブロなど、多岐に渡ってグラフィックを扱っている。

IBM PC ではグラフィック画面とテキスト画面の重ね合わせができないので、記事内のペイントアプリは (今となっては) あまり参考にならないかもしれないが、それ以外の記事はグラフィックユニットを移植するだけで利用可能だと思われる。

前版は ver3.0 対応だったが、グラフィックの描画には実数演算を伴うので TURBO-87.COM を使わないと遅くて仕方ないかもしれない。CP/M-80 版に至ってはリサージュやタートルグラフィックまでしか試せないと思う (そもそも対象としていないだろうが)。

筆者 (安斎氏) は記事内のペイントアプリを発展させたペイントツール『Super Tableau』をサピエンス社からリリースしている。

対象: Turbo Pascal 5.0 (MS-DOS: PC-98)
個人的な評価: ★★★★☆

See also:

・Turbo Pascal ver 5.5 トレーニングマニュアル

Turbo Pascal 5.5 を対象とした入門書です。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal ver.5.5 トレーニングマニュアル 小林侔史 4880638889 1990/04/20

書評

安定のトレーニングマニュアル。『Turbo Pascal ver.5.5』で追加されたオブジェクト指向機能についても 20P 程度ではあるが触れられている。

Embarcadero は『Turbo Pascal ver.5.5』をアンティークソフトウエアとして無償公開しているのだが、『Turbo Pascal ver.5.5』のマニュアルを入手できなくて困っているのであれば、本書を探すといいかもしれない。

前版にあった inline 等のハードウェア寄りな情報は含まれていない。

対象: Turbo Pascal 5.5 (MS-DOS: PC-98)
個人的な評価: ★★★★☆

See also:

・Turbo Pascal ver 6.0 エキスパートマニュアル

Turbo Pascal 6.0 を対象とした書籍です。

image.png

タイトル 著者 ISBN-10
(Amazon)
出版年
Turbo Pascal ver.6 エキスパートマニュアル 小林侔史 4796601597 1991/8/15

書評

前版は ver3.0 が対象だったので、随分と間隔がある印象。ページ数的には 1.2 倍程度増加しているが、行間が狭いので実際のボリュームは 1.5 倍を超えていると思う。

DOS ユニットの使い方や『Turbo Vision』の使い方、オブジェクト指向プログラミング、条件コンパイルのやり方、コマンドラインツールの使い方...一通りの事は網羅している。むしろ、よくこのボリュームで抑えられたなと感心した。

ここまでやっておいてなのだが、ver6.0 の新機能である asm によるインラインアセンブラの使い方は何故か紹介されていない。機械語を扱う部分は従来通り inline によるインライン機械語で記述されており、機械語コードを得るのに MASM を使う場面もあった。

考えるに、筆者は Turbo Assembler に詳しくないため、インラインアセンブラについては割愛したのかもしれない。要はサンプルプログラムの都合だ。インラインアセンブラはもはや Turbo Pascal の範疇ではないので、カットしてくれても構わないのだが、ver6.0 にインラインアセンブラが存在するという事だけは記載しておいてほしかった。

対象: Turbo Pascal 6.0 (MS-DOS: PC-98)
個人的な評価: ★★★★☆

おわりに

PUG BOOKS のシリーズは概ね高評価です。Embarcadero が公開しているアンティークソフトウェア (ver.1.0 / ver.3.0 / ver5.5) に合わせて購入し、時系列順に読んでみたのですが、どの書籍でも新しい知見が得られました。

気が向いたらシリーズの他の書籍も読んでみたいと思っていますが、毛色が異なる『TURBO PASCAL プロフェッショナルマニュアル』だけ読まないかもしれません。こちらは Turbo Pascal を題材にしたプログラム設計の方法論的な内容のようです。

改版について

『トレーニングマニュアル』『エキスパートマニュアル』『Turbo Graphics』は改版されています。

3.0 4.0 5.0 5.5 6.0
トレーニングマニュアル
エキスパートマニュアル
Turbo Graphics
  • 『トレーニングマニュアル』は入門書の役割がありますので、新しいバージョンが出るたびに改版されています。
  • Embarcadero が公開しているアンティークソフトウェアを触ってみたいのであれば、二重丸 (◎) になっている版を探すといいかと思います。
  • 『Turbo Graphics』は PC-9800 シリーズ向けなので、IBM PC で試すにはグラフィックユニットを移植する必要があります。

書評について

書評は 現在での評価 となっています。書籍が出版された時点での評価ではない事にご注意ください。

  1. Turbo Pascal はマイクロソフトウエアアソシエイツ社とサザンパシフィック社の 2 社が販売しており、サザンパシフィック社の日本語マニュアルも存在する (『Turbo Pascal version 3.0 Reference Manual 日本語版』(1985))。

  2. 『Turbo Pascal version 3.0 プログラミング・マニュアルの追加』

1
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
2