How to set the module name when extracting Coq to Haskell

107 views Asked by At

When I extract/compile Coq to Haskell using Extraction Language Haskell. in the Coq file and running coqtop -compile mymodule.v > MyModule.hs, I get a Haskell module which starts with module Main where.

Is there an option to set the resulting Haskell module name?

I currently pipe to sed like this -

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

but I'm looking for a cleaner solution.

1

There are 1 answers

0
Anton Trunov On BEST ANSWER

You can use Extraction "file" or Extraction Library (or its variants), e.g.

Definition foo := 6*7.

Extraction Language Haskell.
Extraction "MyModule" foo.

The above produces MyModule.hs file, which starts with module MyModule where.