nqueens プログラムが近道の森林伐採を使用して伐採できるかどうかを確認しようとしています。私が使用しているコードは、
n = 8
nqueens 0 = [[]]
nqueens k = [p:q | p <- [1..n], q <- nqueens (k-1), safe p q k]
安全は通常どおり定義されます。
最適化を有効にして GHC の出力を見てみましたが、難しすぎてわかりませんでした。
ありがとうございました。
nqueens プログラムが近道の森林伐採を使用して伐採できるかどうかを確認しようとしています。私が使用しているコードは、
n = 8
nqueens 0 = [[]]
nqueens k = [p:q | p <- [1..n], q <- nqueens (k-1), safe p q k]
安全は通常どおり定義されます。
最適化を有効にして GHC の出力を見てみましたが、難しすぎてわかりませんでした。
ありがとうございました。
コアだけを見る必要はありません。より便利な中間形式が他にもあります。ドキュメントから:
デバッグ フラグ -ddump-simpl-stats を使用して、起動したルールを確認します。さらに情報が必要な場合は、-ddump-rule-firings で個々のルールの実行が表示され、-ddump-rule-rewrites で書き換え前後のコードが表示されます。
http://www.haskell.org/ghc/docs/7.4.1/html/users_guide/rewrite-rules.html