我有file1.hs,它不是一个包含两个函数的模块。我也有file2.hs,其中有主要内容,我想知道是否可以在file2中使用file1中的函数。 file2从命令行args读取.txt文件,所以我一直在这样做:
ghc --make file2
然后,
file2.exe input.txt
是否可以在不创建模块的情况下跨文件访问函数?
答案 0 :(得分:1)
如果您的实现支持,可以使用C预处理器。
-- file2.hs
{-# LANGUAGE CPP #-}
module Main where
#include "file1.hs"
main = print $ foo 42
和
-- file1.hs
foo x = x * 2
但是,这可能并不一定意味着这是一个好主意。只需使用模块。