読者です 読者をやめる 読者になる 読者になる

TL/1 の変なところ (空白文字)

プログラミング言語 TL/1 では空白文字として扱われる文字は以下の通りだ。

  • ASCII コードが 1F 以下の文字 (制御文字)
  • スペース
  • ピリオド
  • セミコロン

制御文字はともかくとして、ピリオドやセミコロンが空白扱いというのは珍しいのではないだろうか。 どうしてこのようになっているのかという理由は判然としないがピリオドについては一応の用途というか、利用方法の習慣があったようだ。 英文字からなる二項演算子の両端にピリオドを置くという習慣である。

A := 1 .ADC. 2

英文字だけだとそれが二項演算子であることがわかり難いのは確かなので、このような習慣が生まれたことは納得できる。

その他、ピリオドやセミコロンはいくつかの主要言語で式や文の区切りや終端を表すのに使われることから、あくまで想像ではあるがそれらに見た目を似せたりする用途に使われていたのではないかと私は考えている。 試しに前回のコードに無駄な区切り記号を入れてみよう。

VAR A,B;
BEGIN
  A := 255 + 1;
  B := 0 ADC 0;
  WRITE(0: "A=", A, CRLF, "B=", B, CRLF)
END.

なんだか Pascal 風になったように見えなくもない。

これについては私の想像なので、どのようにピリオドやセミコロンが使われていたのか実際のところを知っている方がいれば情報を頂きたい。

Document ID: 9604d0bad0887847247c05c9eb5421b1