7

よくわからないのですが、サンクの構造を表示する方法はありますか?

例えば

f x = x + 2
g x = 3 x

compo x = f (g x)

ans = compo 5
-- result: (3 * 5) + 2 = 17

サンクを「見る」方法はありますansか?compoのように、「一般的な」形式のベータ削減のプロセスを見ることができました。

たとえば、次のことを確認したいと思います。

compo n
--> (3 * n) + 2

のように、 function があった場合compo x、それが に分解されることを確認したいと思い(3*n)+2ます。

たとえば、Mathematica では次のようになります。

f[x_] := x+2;
g[x_] := 3*x;
compo[x_] := f[g[x]];

compo[n]
(%
  --> (3 * n) + 2
%)
4

3 に答える 3