>>612
素直に再帰下降で書かれているから、仕掛けが判れば改造も難しくないと思う

1、常に1句 sym {numVar/str} を先読みする GetSym が1句の読み出し
  考え方としては、
   「その句が自分の担当でなければ知らん顔をして何もせずに帰る」
  という手続きを順に呼び出す事で処理させてゆく
  

2、計算以外の句は、1句毎に処理させてゆく
  計算部は再帰下降を使う


3、四則演算は、 左数字 演算子 右数字 という格好をしているので
  演算子を確認したら、
   左数字を保存し、 
   右の式を再帰を使って計算させてから、帰って来た結果と演算させる

 という方式で計算する。この時、演算子の優先順位を付ける方法として
 優先順位毎に関数を作り、
 各処理関数で、自分より一つ高い優先順位の処理を先に実行させる
 という簡単な方法で対応させる
 一番高い優先順位は括弧 一番低いのは加減算