如何在 ANF 中编码身份函数?
How to encode the identity function in ANF?
我正在尝试理解 ANF(行政范式),但我无法理解 lambda 术语的翻译。考虑这个 lambda 项:λx.x
。你如何在 ANF 中对其进行编码? x
是一个变量,但是一个lambda body在ANF中必须是一个let绑定或者一个函数应用,根据ANF语法:
EXP ::= VAL VAL
| let VAR = EXP in EXP
VAL ::= λ VAR . EXP
| VAR
A-normal form 上的维基百科页面未能提供完整的语法。
这是更正后的版本:
EXP ::= VAL
| VAL VAL
| let VAR = EXP in EXP
VAL ::= λ VAR . EXP
| VAR
这意味着恒等函数是A归一化函数的一个不动点,即它是一样的λx. x
。有关更多信息,请参见 here.
我正在尝试理解 ANF(行政范式),但我无法理解 lambda 术语的翻译。考虑这个 lambda 项:λx.x
。你如何在 ANF 中对其进行编码? x
是一个变量,但是一个lambda body在ANF中必须是一个let绑定或者一个函数应用,根据ANF语法:
EXP ::= VAL VAL
| let VAR = EXP in EXP
VAL ::= λ VAR . EXP
| VAR
A-normal form 上的维基百科页面未能提供完整的语法。 这是更正后的版本:
EXP ::= VAL
| VAL VAL
| let VAR = EXP in EXP
VAL ::= λ VAR . EXP
| VAR
这意味着恒等函数是A归一化函数的一个不动点,即它是一样的λx. x
。有关更多信息,请参见 here.