DEC社 TOPS-20「hello, world」プログラミング(Ⅴ) LOGO

TOPS-20 Land

TOPS-20 Land

プログラミング言語の宝庫

2020年3月、歴史的に貴重なDEC社 TOPS-20のLOGO言語で「hello, world」をプログラミングしました。

TOPS-20は、DECのPDP-10マシンで動作するOSで1976年に誕生して1970年代から1980年代にかけてUNIXと共に人気のあったOSです。
TOPS-20では、多くのプログラミング言語処理系が動作していました。
TOPS-20で動作する言語処理系は半世紀以上前に生まれた言語であり、21世紀の現在では使われていない言語もあります。

項番 言語 開発時期 一言説明
1 FORTRAN 1954年 科学技術計算向け言語
2 COBOL 1959年 基幹システムを支える言語
3 ALGOL 1958年 アルゴリズム記述言語
4 Simula 1967年 初のオブジェクト指向言語
5 PASCAL 1970年 計算機科学の教育用言語
6 C 1972年 システム記述の標準言語
7 SNOBOL 1962年 強力なテキスト処理言語
8 BASIC 1964年 思考を助ける対話型言語
9 LISP 1958年 関数型リスト処理言語
10 LOGO 1966年 思考方法を学ぶ教育用言語
11 FORTH 1971年 パワフルなスタック型言語

これらのプログラミング言語は、いろんな時代背景で生まれそのユーザーと共に進化してきました。例えば、FORTRAN言語は科学の強力な道具となり、COBOL言語はデータ処理ユーザーに支えられ、C言語はUNIXと共に普及し、LISP言語は人工知能(AI)研究と共に進歩してきました。

今回のブログでは、項番10のLOGO言語による「hello, world」を紹介します。

LOGOの設定

LOGOシステムで使用できるエディターはEMACSなので、端末モードをビデオ型端末(VT100)に設定して、定義済みエディター(論理名editor:)をEMACSとします。

@terminal vt100
@define editor: sys:emacs.exe

LOGO言語

EDITコマンドで、HELLO.LOGOというソースファイルを作成します。
LOGOプログラムのファイルタイプは「.LOGO」です。

LOGO言語

LOGO言語

LOGOは、インタープリター型なのでコンパイルは不要で即実行できます。


@plogo

Welcome to Children's Museum/LSRHS LOGO (TOPS-20 version)

*     ←①
*print  "hello,%world
hello, world

*      ←②
*hello
hello, world

*      ←③
bye
@

PLOGOコマンドでLOGOシステムを起動します。(LOGOではありません)
LOGOシステムは、起動時にカレントディレクトリーの.LOGOファイルは自動的に読み込まれます。

  1. ① LOGOプログラムを入力するとダイレクト・モードで実行します。
  2. ② プログラム名で、LOGOプログラムを実行します。
  3. ③ byeコマンドで、LOGOシステムを終了します。

LOGOは、LOGOシステムの中からEMACSを起動してプログラムを編集し、即LOGOシステムに反映できます。
極めて対話的に使用できるLOGO環境となっています。
詳しくは、『超マシン復活 #2 DEC TOPS-20 プログラム言語 その世界』を参照してください。

TOPS-20 プログラミング言語の解説書

「hello, world」を実行できたら、もう少し複雑なプログラムを書いてみませんか。

プログラミング言語の詳細な解説やLOGOシステムの使い方は、『超マシン復活 #2 DEC TOPS-20 プログラム言語 その世界』という書籍を参考にしてください。

|d|i|g|i|t|a|l| DECSYSTEM 20
技術を極める知的冒険の旅へようこそ

 


プログラミング言語の世界の魅力は、この書籍だけでは語り尽くせません。TOPS-20ワールドは、ワクワクでいっぱいです。この本を出発点として、探究心と好奇心の扉を開いて『技術を極める知的冒険の旅』へ出発してください。

超マシン 関連情報

『超マシン誕生』と『超マシン復活』

超マシン復活 #1 DEC TOPS-20 レトロOSワールド

超マシン復活 #1 DEC TOPS-20 レトロOSワールド (無料サンプル)

超マシン復活 #2 DEC TOPS-20 プログラム言語 その世界

 

このエントリーをはてなブックマークに追加