Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/haskell/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
向haskell添加其他文件_Haskell_Functional Programming - Fatal编程技术网

向haskell添加其他文件

向haskell添加其他文件,haskell,functional-programming,Haskell,Functional Programming,我正在用haskell编写应用程序,我想将一些函数和数据类型导出到其他文件中,然后能够在我的主文件中使用它们 如何做到这一点 感谢您的帮助关于Haskell模块的介绍将是一个很好的起点,或者是学习Haskell(特别是“制作我们自己的模块”部分)的开始。您可以这样展示您的源代码: Main.hs A/Module.hs 您需要在A/Module.hs中指定它实际上是哪个模块;它必须是: module A.Module where ... 在Main.hs中,导入A.Module;默认情况下

我正在用haskell编写应用程序,我想将一些函数和数据类型导出到其他文件中,然后能够在我的主文件中使用它们

如何做到这一点


感谢您的帮助

关于Haskell模块的介绍将是一个很好的起点,或者是学习Haskell(特别是“制作我们自己的模块”部分)的开始。

您可以这样展示您的源代码:

Main.hs
A/Module.hs
您需要在
A/Module.hs
中指定它实际上是哪个模块;它必须是:

module A.Module where

...

Main.hs
中,导入
A.Module
;默认情况下会导出所有名称。

但在Haskell中,模块名称不必与文件名匹配,正如Java类
com.example.Service
必须位于
com/example/Service.Java
中一样。为了方便起见,个别编译器可以建立常规的对应关系,但如果您确实愿意,您也可以告诉GHC(例如)在
SomeRandomDirectory/NotMyModule.hs
中查找
MyModule
,并且(更典型地)您的
Main
模块不必位于名为
Main.hs
的文件中;如果你愿意,你可以打破传统。看到阴谋集团项目目录中有
src/A/Module.hs
并不少见。你建议的更复杂的重定向,我从未尝试过。