読者です 読者をやめる 読者になる 読者になる

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番目の関数、同じものなのですが相当縮んでいるのがおわかりでしょうか
ていうか関数の宣言で一画面埋まるとか・・・