jjzjj

performance - 为什么嵌套的 MaybeT 会导致指数分配

我有一个程序。importControl.MonadimportControl.Monad.IdentityimportControl.Monad.Trans.MaybeimportSystem.EnvironmenttryR::Monadm=>([a]->MaybeTm[a])->([a]->m[a])tryRfx=domreturntNothing->returnxcheck::MonadPlusm=>Int->mIntcheckx=ifx`mod`2==0thenreturn(x`div`2)elsemzerofoo::MonadPlusm=>[Int]->m[Int]foo[]

performance - 为什么嵌套的 MaybeT 会导致指数分配

我有一个程序。importControl.MonadimportControl.Monad.IdentityimportControl.Monad.Trans.MaybeimportSystem.EnvironmenttryR::Monadm=>([a]->MaybeTm[a])->([a]->m[a])tryRfx=domreturntNothing->returnxcheck::MonadPlusm=>Int->mIntcheckx=ifx`mod`2==0thenreturn(x`div`2)elsemzerofoo::MonadPlusm=>[Int]->m[Int]foo[]