>>42
俺は Delphi はよく知らんのだが、GikoBasic をざっと読んだ感じだと

- プログラムは一つのクラス TGikoScr
- 各トークンは GetSym で読み出して Variant 型として管理

っつー感じなのか。

状態を管理しているのは TGikoScr だけだし、これは OO というよりは典型的な
手続き型プログラミングだと思うけど。OO で設計するなら

- 入力ストリーム
- 字句解析
- 構文解析
- シンボルテーブル
- 構文木/そのノード
- 最適化
- 出力ストリーム

あたりをオブジェクトに切り出すと思うが、そもそも GikoBasic の規模だと、そ
こまでやらずに済ませてる今のコードも悪くないと思うよ。

これが、たとえば変数やラベルにスコープの概念が入っくるとシンボルテーブル
は分けた方が良いし、中間コードを作ることにすると構文木も分けたほうが管理
が楽になる。