【问题标题】:Given the anonymous function below, what does the "<fun:clo@1>" mean in the function signature?给定下面的匿名函数,函数签名中的“<fun:clo@1>”是什么意思?
【发布时间】:2017-09-22 22:23:35
【问题描述】:

在这个 F# 匿名函数签名中,“fun:clo@1”是什么意思?

(fun x-> x+2);;
val it : x:int -> int = <fun:clo@1>

我了解匿名函数在做什么,我了解签名的其余部分,我已经四处寻找答案,但还没有弄清楚“”是什么意思?

【问题讨论】:

    标签: function f# signature


    【解决方案1】:

    这部分本质上是函数的自动生成名称。

    fun 部分是因为它是一个函数。

    如果 lambda 在另一个函数中,clo 在某些情况下会被包含函数的版本替换。

    @1 是因为它是函数中的第一个 lambda。

    不过,所有这些实际上都是一个实现细节,并且可能会在不同版本之间发生变化

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-02-06
      • 2014-03-23
      • 2011-10-05
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多