7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

ALGOL60に関してちょっとだけ調べた

Posted at

とある目的のために各種言語を調査しています。

ALGOL(アルゴル)は、命令型プログラミング言語ファミリの1つ[注 1]。
名前「ALGOL」は「アルゴリズム言語」を意味する英語「algorithmic language」に由来する。
1950年代中ごろに開発され、多くの言語に影響を及ぼし、
ACMや教科書や学術論文などでアルゴリズム記述のデファクトスタンダードとして30年以上使われた

ALGOLはコードブロックを導入
begin と end でそれを囲むことで、構文スコープのネスティングを可能にした最初の言語となった。
"Algol 60 Report"[3] で言語設計の主要な記法となったバッカス・ナウア記法を導入している。

ここの記述を見る限りは、特徴的な機能として

  • コードブロック
  • 構文スコープのネスティング

が上げられるようだ。また、記法として バッカス・ナウア記法を導入した言語らしい。

実際に動かしてみようかと色々検索した結果、ALGOL60は見当たらなかったがALGOL68
の方のコンパイラは見つかった。せっかくなので動作させてみる。(ちなみに、コンパイラを落としてこなくてもonlineで試せるので、面倒くさいと思う人はそちらで)

コンパイル

wget https://jmvdveer.home.xs4all.nl/algol68g-2.8.4.tar.gz
tar zxvf algol68g-2.8.4.tar.gz
cd algol68g-2.8.4
./configure && make

実行

割と簡単に動きました。

cat > main.alg
print("Hello world!")

./a68g main.alg

ファイルを開いたら、さすがのvimもデフォルトでALGOLのsyntaxは対応してなかったみたい。
あとで、 コードサンプルここに転がっているのでここから適当にもらってきて試して見る。

7
3
1

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
7
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?