GHC コンパイル プロセスに便乗し、そのコア表現を変更することにより、コンパイラの最適化の実装をテストしたいと考えています。アイデアは次のようなものを持つことです:
runGhc (Just libdir) $ do
...
c <- compileToCoreModule targetFile
compileCoreToObj False (modify c)
...
ここでmodify
コア表現を取り、変更されたバージョンを返します。ただし、このコードは (modify がまったく何もしない場合でも) 失敗し、あまり役に立たないメッセージが表示されます。
expectJust mkStubPaths
これを機能させる方法、またはこの方法でコード変換を実装することさえ可能かどうかについてのアイデアはありますか?