1

当我在 F# 中使用 open 关键字时

module AnotherModule

open myFSharpModule

这可以被认为是 Ruby 中的 mixin 或 Scala 中的 trait 吗?前几天我在想我多么希望 F# 有这些功能,但后来我突然想到open关键字可能是同一个东西。在某种程度上,它只是将引用的模块复制到您正在定义的模块中。

4

1 回答 1

4

在 F# 中,open只是导入声明,以便从您要导入它们的范围内访问。

它不会使这些声明成为您模块的一部分,它只是为了让您可以在没有资格的情况下从您的模块中引用它们

Scala 中的等价物是import,在 Ruby 中是require.

于 2012-07-13T18:18:38.377 回答