【发布时间】:2018-08-27 11:04:39
【问题描述】:
我必须遵循我正在尝试编译为 C 的 Haskell 程序。 我查看了this SO post,但在那里找不到答案。
quicksort [] = []
quicksort (p:xs) = (quicksort lesser) ++ [p] ++ (quicksort greater)
where
lesser = filter (< p) xs
greater = filter (>= p) xs
main = print(quicksort([5,2,1,0,8,3]))
这是我尝试过的:
$ ghc -C main.hs
我得到的是:
ghc: the option -C is only available with an unregisterised GHC
Usage: For basic information, try the `--help' option.
这有点奇怪,因为当我查看帮助时,我看到了这个:
-C 生成 C 后停止(.hc 输出)
【问题讨论】:
-
请注意,您可以使用外部函数接口将 Haskell 编译为目标文件和 C header 文件。然后可以将它们链接到 C 程序中。这比从字面上反编译成 C 源代码要好得多。
标签: c haskell compilation