当我在F#中使用open关键字时
module AnotherModule
open myFSharpModule
这可以被认为是Ruby中的mixin还是Scala中的特征?前几天我在想,我希望F#有这些功能,但后来我发现open
关键字可能是同一个东西。在某种程度上,它只是将引用的模块复制到您定义的模块中。
答案 0 :(得分:4)
在F#中,open
只需importing declarations即可从您导入的范围内访问。
它不会使这些声明成为您模块的一部分,只是为了您可以在 模块中无需资格的情况下引用它们。
Scala中的等价物是import
,在Ruby中是require
。