提取Coq时如何设置模块名称为Haskell

How to set the module name when extracting Coq to Haskell

当我 extract/compile Coq 到 Haskell 使用 Coq 文件中的 Extraction Language Haskell. 和 运行 coqtop -compile mymodule.v > MyModule.hs 时,我得到一个 Haskell 模块以 module Main where.

开头

是否有设置生成的 Haskell 模块名称的选项?

我目前像这样通过管道连接到 sed -

coqtop -compile mymodule.v | sed s/Main/MyModule/ > MyModule.hs

但我正在寻找更清洁的解决方案。

您可以使用 Extraction "file"Extraction Library(或其变体),例如

Definition foo := 6*7.

Extraction Language Haskell.
Extraction "MyModule" foo.

以上生成 MyModule.hs 文件,以 module MyModule where.

开头