はじめに
『PASCAL (情報処理シリーズ 2)』(原題:Pascal User Manual and Report) は、キャスリン・イェンゼン (Kathleen Jensen) とニクラウス・ヴィルト (Niklaus Wirth) によって書かれた PASCAL 言語についての書籍である。著者名の頭文字からしばしば J&W と略される。または単純に Report とも。
原書の初版は 1974 年に出版され、PASCAL 言語が標準化されるまでの間リファレンス的な扱いを受けていた。1984 年の第 3 版では ISO での標準化を反映して内容が大幅に変更されている。
第 3 版の改訂者はアンドリュー・B・ミケル (Andrew B. Mickel) とジェームス・F・マイナー (James F. Miner)。
日本語訳は第 2 版と訳書訂正版とも原田賢一。原書初版の日本語訳はない。
出版社は培風館。
原書 (年度) |
原書 ISBN |
日本語訳 (年度) |
日本語訳 ISBN |
頁数 |
---|---|---|---|---|
初版 (1974) |
038706950X 354006950X |
|||
第 2 版 (1978) |
0387901442 3540901442 |
PASCAL (1981) |
456300782X 456300782X |
187P |
第 3 版 (1984) |
0387960481 3540960481 |
PASCAL 原書第 3 版 (1988) |
4563014621 | 243P |
第 4 版 (1991) |
0387976493 3540976493 |
PASCAL 原書第 4 版 (1993) |
4563014664 | 251P |
※リンク先は Amazon です。
J&W スタイル
本書 (第 4 版) でソースコード片を示すのに使っているインデントやブレースの位置などのスタイルを指して J&W スタイルと呼ぶことがある (C 言語で言うところの GNU スタイル)1。これに対し、Borland 系の Pascal (Turbo Pascal, Borland Pascal, Delphi) は Borland スタイルで書かれている (C 言語で言うところの BSD/オールマンスタイル)。
おわかりいただけただろうか?
この記事が "プログラミング言語 C (Wikipedia)" のパクリオマージュという事を...。
標準 Pascal / 拡張 Pascal
規格化された Pascal は以下の 2 つです。
Pascal | 説明 |
---|---|
Standard Pascal (標準 Pascal) |
ISO/IEC 7185 準拠の Pascal |
Extended Pascal (拡張 Pascal) |
ISO/IEC 10206 準拠の Pascal |
(標準)Pascal へのオブジェクト指向拡張はドラフトのまま放置されました。
See also:
Pascal の書籍について
標準 Pascal を対象としたすべての書籍に言えますが、少なくとも 1983 年よりも前に出版されていて改訂版が出ていないものは、標準 Pascal (ISO 7185:1983) に対応していません。
そして少なくとも 1990 年よりも前に出版されていて改訂版が出ていないものも最新の標準 Pascal 規格である ISO/IEC 7185:1990 に対応していません。そもそも日本だと 1990 年代に出版された標準 Pascal 本自体が少ないのですけれどね。
巻末の索引を調べて**「スカラ型」**という単語があれば、まず標準 Pascal に対応していません2。これが一つの目安になるかと思います。
See also:
##ideone.com
ideone.com では GNU Pascal (GPC) と Free Pascal (FPC) が使えますが、コンパイラモード指令でコンパイラの振る舞いを変更することができます。
###GNU Pascal (GPC) の場合
{$Extended Pascal}
を明示しないと Extended Pascal (ISO/IEC 10206) モード にならないものだと思っていましたが、コンパイラ指令なしで Standard Pascal (ISO/IEC 7185) / Extended Pascal (ISO/IEC 10206) が使えるようです。
program ideone;
const
Num = 2#10101010;
begin
Writeln(Num);
end.
上記コードは 170 を表示します。
Free Pascal (FPC) の場合
{$mode ISO} で Standard Pascal (ISO/IEC 7185) モード。
{$mode extendedPascal} で Extended Pascal (ISO/IEC 10206) モード。但し未実装が多く、モード自体もまだ実装されていないようです。
{$mode DELPHI} で Delphi モード (ANSI)。
{$mode DelphiUnicode}} で Delphi モード (Unicode)。
詳しくは Free Pascal のコンパイラモードを参照してください。
PASCAL-P5
純粋な標準 Pascal を試すための方法を別記事で書いてみました。
おわりに
2/14 は Delphi の誕生日で、翌 25 日は Wirth 先生の誕生日なのでこんなのを書いてみました。
訳書は図書館の蔵書が放出されたのが安く出回っているようなので、Pascal 好きな方は一冊確保しておくといいかと思います。冗談めいて書きましたが、この本は本当に C 言語における K&R みたいなものなので。
原書も訳書も見た目では第何版なのか判りにくいので購入される際はご注意を。原書はともかく訳書は原書第 4 版ベースの 1993 年版だけあればいいかと思います。