我试图看看nqueens程序是否可以使用捷径砍伐森林进行砍伐, 我正在使用的代码是,
n = 8
nqueens 0 = [[]]
nqueens k = [p:q | p <- [1..n], q <- nqueens (k-1), safe p q k]
和安全是通常定义的。
我试图通过启用优化来查看GHC的输出,但这很难理解。
谢谢。
答案 0 :(得分:1)
你不需要只看核心。还有其他中间形式可能更有用。来自文档:
使用debug flag -ddump-simpl-stats查看触发的规则。如果您需要更多信息,那么-ddump-rule-firings会显示每个单独的规则触发,-ddump-rule-rewrites也会显示重写前后代码的样子
http://www.haskell.org/ghc/docs/7.4.1/html/users_guide/rewrite-rules.html