mimium

ツリー形式からBasicBlockのインストラクション形式に変える

Stateのこととupvalueを両方処理しなくてはならない

StateSize計算とUpvalue計算の両方をtraitとして切り出す方がいいのかな

結局W計算のStaged Interpreterと変わらんかもな

そうすると型付けの時点でクロージャ相当の項とグローバル関数適用の項は分かれることになる?エフェクトとして考えるのが妥当なのかな

コンパイル

let compiler = fun e -> match e with
  Id(x) -> 
  | App(e1,e2)->
  | Feed(x,e) ->