Util コンパイラ

Util のソースプログラムを入力して下さい。


入力の文法カテゴリ:
Expr(式) Decls (宣言 つまり、 変数 = 式; 変数 = 式; … ; 変数 = 式
出力に do 式を使いますか:
はい do 式を使います いいえ >>= を使います

入力例(コピペして使って下さい):
fact = \ n -> if n == 0 then 1 else n * fact(n - 1)
;
test = \ n -> begin set xP n; set xP (get xP + 3); get xP end
;
factST = \ n -> begin
    set xP 1; set yP n;
    while get yP > 0 do begin
      set xP (get xP * get yP);
      set yP (get yP - 1)
    end;
    get xP
  end
;
foo = \ n -> begin
    set xP n;
    while get xP > 0 do begin
      write (get xP % 10);
      set xP (get xP // 10)
    end
  end

Koji Kagawa