gpt4 book ai didi

c# - C# 如何评估 lambda 表达式?

转载 作者:行者123 更新时间:2023-11-30 22:11:54 25 4
gpt4 key购买 nike

<分区>

我已经阅读了一些关于评估 lambda 演算的算法(不是解析,而是在解析后进行评估),但到目前为止,所有这些算法似乎都是您用笔和纸使用的那种方法。我想从头开始用 C# 编写我自己的 lambda 演算计算器,并且想知道实际程序是如何做到这一点的。

由于 lambda 表达式是 lambda 演算的超集,我想知道 lambda 表达式的 lambda 演算子集是如何计算的(不关心二元运算或转换等)。

我已经有我的类(class),但我不确定如何从这里开始评估:

public enum TermType { Variable, Application, Abstraction };

public abstract class LambdaTerm
{
public readonly TermType TermType;

protected LambdaTerm(TermType termType)
{
TermType = termType;
}
}

public class LambdaVariable : LambdaTerm
{
public string Name;
public LambdaVariable() : base(TermType.Variable) { }
}

public class LambdaApplication : LambdaTerm
{
public LambdaTerm Function;
public LambdaTerm Parameter;
public LambdaApplication() : base(TermType.Application) { }
}

public class LambdaAbstraction : LambdaTerm
{
public string ArgumentName;
public LambdaTerm Body;
public LambdaAbstraction() : base(TermType.Abstraction) { }
}

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com