Theory Test
section ‹Test build of Isabelle/Haskell modules›
theory Test
imports Haskell
begin
compile_generated_files _ (in Haskell)
where ‹fn dir =>
let
val modules =
Generated_Files.get_files \<^theory>‹Haskell›
|> map (#path #> Path.implode #> unsuffix ".hs" #> space_explode "/" #> space_implode ".");
val _ =
GHC.new_project dir
{name = "isabelle",
depends =
["array", "bytestring", "containers", "network", "split", "text", "time", "threads", "uuid"],
modules = modules};
in
writeln (Generated_Files.execute dir ‹Build› "mv Isabelle src && isabelle ghc_stack build")
end›
end