インターネット&PC120%活用:PC活用編

Algolの入手

1 Algolの入手
Algolは、Pascal,C,Basicなどの現在の主要なプログラム言語の祖先ともいうべき言語です。だから当然
ものすごく古い言語のひとつです。
DOS用のalgol60というalgolコンパイラを見つけましたので、試しに使ってみました。

Free Compiler」に揚げたコンパイラを集めたサイトを探せば、他のalgolコンパイラも見つかるかも
しれません。

2 algol60を使って見る
(1)インストールと起動
algol60.zipファイルを展開するだけで使えます。DOS用です。
algol.exe というのがコンパイラです。リンカーは複数あって通常はAlink.exe を使います。Long型整数を
使う場合はAlinkl.exeでリンクします。他にAlinks.exeというリンカーがあります。
ソースファイルの拡張子は、.alg でコンパイルすると、.obj ができます。
リンクすると、.asc というファイルができます。これは中間ファイルで、arun.exe というランタイムプログラム
で実行します。long型整数を使ったプログラムは、arunl.exeで実行します。
(詳細はalgol60.txtというテキストファイルを見て下さい。英語ですが)

algolについての文献て日本語のものはほとんどなく、Web上でもあまりプログラム上参考になるページ
はありません。まあ、化石になってしまった言語ですから、仕方ないでしょう。現在なおalgolプログラマと
いう人はいないですよね。
参考にするなら、先ほどのalgol60.txtに言語仕様も記述してありますので、これが一番いいでしょう。

以下は、足し算をするadd.algというソースファイルを、
コンパイル algol add=add −>add.obj
リンク alink add=add −>add.asc
実行する arun add
手順です。
コンパイラ、リンカーともに、以下のように=を使った書式となります。
algol output file=input file(source file)
alink outputfile=inputfile, inputfile, ...

C:\algol60\algol60>algol add=add

8088/8086 ALGOL V5.5 MS-DOS
Copyright (C) 1984 by RHA (Minisystems) Ltd.

COMPILES OK
SIZE 54


8088/8086 ALGOL V5.5 MS-DOS
Copyright (C) 1984 by RHA (Minisystems) Ltd.

OUT=IN ?


C:\algol60\algol60>alink add=add

8088/8086 Rogalgol linker V5.4 MS-DOS
Copyright (C) 1984 by RHA (Minisystems) Ltd

Unresolved labels:


Next load address 54


C:\algol60\algol60>arun add

8088/8086 ALGOL V5.5 MS-DOS
Copyright (C) 1984 by RHA (Minisystems) Ltd
Number1: 5
Number2: 10
result15
^

add.alg(ソースファイルは以下の通り)
他のいくつかのサンプルファイル見よう見まねで作成しているので、文法の細かいことはわかりません。
いずれにしても、BEGIN とEND FINISHの間にコードを記述するようです。文の終わりには ; をつけます。
C, Pascal の祖先ですから、その辺りに近い気がします。

BEGIN
INTEGER num1,num2,r;

text (1,"Number1: ");
num1:=read(1);
text(1,"Number2: ");
num2:=read(1);
r:= num1 + num2;
text(1, "result");
write(1,r);


END FINISH



TopPage


inserted by FC2 system