gsp*_*spr
18
polymorphism
profiling
haskell
ghc
我有一个"不必要"多态的代码库,因为几乎每个函数都以某种方式是多态的(为什么不是,什么时候可以?),但最终程序只使用少数具体类型的函数.我已经开始花费一些时间投入SPECIALIZE和INLINABLEpragma试图降低所有这些多态性的性能成本,但是随着我的代码的大小,它非常受欢迎.对于每个函数,有没有办法分析在运行时花费多少时间"完成多态性所需的事情"?
(注意:我已经问过这个问题而不知道这样的事情是否在技术上是可行的,或者"多态性需要的东西"是否足够明确).