これまで、長いこと Small Basic を使ってきたのですが、過去、BASIC で書かれた本も結構あって、それをいちいち Small Basic に書き直すのも面倒なので、BASIC から Small Basic への変換プログラムを作ろうと思い立ちました。
この手のプログラムを書く場合、まず BASIC で書けば、そのプログラム自身を変換して Small Basic の変換プログラムを作れる訳です。ということで BASIC でのプログラミングをしばらく楽しもうと思います。
で、Windows で実行できる BASIC を探した結果、PC-BASIC が良かろうということで、まずは PC-BASIC 1.2.14 をインストールしました。
さて、今回 BASIC のコンバータを作りたいと思ったきっかけは、『数学とBASIC』という本です。残念ながら絶版になっているようです。
この本はbit誌の1982年7月号から12月号の連載をベースにしたもので、BASIC で代数を扱っています。コンピュータ自体、数学に支えられている面がありますが、その主体は代数の分野であるといっていいでしょう。コンピュータの特にソフトウェアを理解することは代数の一部として扱っていいのではないかと思っています。
コンバータを作り始める前に、まずちょっと BASIC を思い出す意味も込めて、この本にある(p7 の)問題を解いてみようと思います。
問題 A, B, C, D, P, Q, R, S, W, X, Y, Z は(数学でいう)変数であるとする.式
(A + B + C + D) (P + Q + R + S) (W + X + Y + Z)
の括弧をはずした式を打ち出すプログラムを作れ.
(つづく)