ParaisoにDead Code Eliminationを実装
劇的ビフォー/アフター
ほんとはHoopl使いたいんだお・・・
でも今の俺じゃ歯が立たないお・・・
だからまずは基本的な最適化を自前で実装するお!!!
renumberのところがちょっとApplicative使って綺麗に書けたのはうれしかった
newNodes = catMaybes $ fmap (\(idx, lab) -> (,lab) <$> renumber idx) $ FGL.labNodes graph newEdges = catMaybes $ fmap (\(iFrom, iTo, lab) -> (,,lab) <$> renumber iFrom <*> renumber iTo) $ FGL.labEdges graph
だが、こんなので喜んでるレベルじゃまだまだだな…
上がbeforeで下がafterです
上から2番目の関数、同じものなのですが相当縮んでいるのがおわかりでしょうか
ていうか関数の宣言で一画面埋まるとか・・・