Parsing 如何解析Haskell文件而不使其成为模块

Parsing 如何解析Haskell文件而不使其成为模块,parsing,haskell,Parsing,Haskell,我刚刚开始为golf Haskell程序编写一个Haskell程序(尽量减少字符数),但我遇到了一个解析问题。当我使用Language.Haskell.Parser中的parseModule函数时,它会向文件中添加模块声明。显然,这不是我想要的,因为它添加了不必要的字符 因此,对于包含由…表示的某些代码的程序,输出将如下所示 module Main (main) where { main = do { ... }} 是否有一个简单的解决方案,或者我必须修改从parseModule返回的Hs

我刚刚开始为golf Haskell程序编写一个Haskell程序(尽量减少字符数),但我遇到了一个解析问题。当我使用
Language.Haskell.Parser
中的
parseModule
函数时,它会向文件中添加模块声明。显然,这不是我想要的,因为它添加了不必要的字符

因此,对于包含由
表示的某些代码的程序,输出将如下所示

module Main (main) where { main = do {  ...  }}

是否有一个简单的解决方案,或者我必须修改从
parseModule
返回的
HsModule
,以输出一个没有模块声明的文件?

您不能从结果中减去该字符数吗?这是一种方法,但是当输入文件已经是一个模块时该怎么办?我觉得可能会有一个优雅的解决方案,涵盖所有我没有看到的情况。