当Haskell模块没有声明任何导出时,这意味着什么?
我刚刚遇到一个Haskell模块,它似乎没有导出任何内容: 项目中还有其他模块可以导入它当Haskell模块没有声明任何导出时,这意味着什么?,haskell,Haskell,我刚刚遇到一个Haskell模块,它似乎没有导出任何内容: 项目中还有其他模块可以导入它 import Schwifty.Swift.M105.Types 我认为Haskell模块总是必须声明它们的导出。如果您不这样做,这意味着什么?来自: 如果省略模块关键字后面的导出列表,则将导出绑定在模块顶层的所有名称 发件人: 如果省略模块关键字后面的导出列表,则将导出绑定在模块顶层的所有名称 你必须区分 空的导出列表模块Foo where和 在所有模块Foo where没有导出列表。 空的导出列表表示
import Schwifty.Swift.M105.Types
我认为Haskell模块总是必须声明它们的导出。如果您不这样做,这意味着什么?来自:
如果省略模块关键字后面的导出列表,则将导出绑定在模块顶层的所有名称
发件人:
如果省略模块关键字后面的导出列表,则将导出绑定在模块顶层的所有名称
你必须区分 空的导出列表模块Foo where和 在所有模块Foo where没有导出列表。 空的导出列表表示:不导出值或类型定义。但是,模块仍然从模块本身和所有导入的模块导出所有实例声明,因此具有空导出列表的模块可能会很有用
完全没有导出列表意味着:导出模块本身中的所有值和类型定义。当然,还有所有实例声明。您必须区分 空的导出列表模块Foo where和 在所有模块Foo where没有导出列表。 空的导出列表表示:不导出值或类型定义。但是,模块仍然从模块本身和所有导入的模块导出所有实例声明,因此具有空导出列表的模块可能会很有用 完全没有导出列表意味着:导出模块本身中的所有值和类型定义。当然,还有所有实例声明
import Schwifty.Swift.M105.Types