![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
Extensible effects look much more likely to achieve reasonable performance in Scala than monad transformers.
2013-11-28 07:21:34![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@jdegoes what do you think about @kmett's response here? http://t.co/Ep1uEjJJT1 cc/@viktorklang
2013-11-28 09:01:52![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@nuttycom @jdegoes @viktorklang Note: Many objections (lazy writer/reader) are specific to laziness. A couple others get fixed by using Ran.
2013-11-28 09:13:17![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@nuttycom @jdegoes @viktorklang That said, extensible effects implemented naively in scala are pretty awful perf-wise: too much trampolining
2013-11-28 09:14:19![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@jdegoes @nuttycom Don't you end up with both? Dan Doel's writeup asks the same questions I have of this approach https://t.co/8glxEdWpov
2013-11-28 09:47:23![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@jdegoes @nuttycom And the equivalent in Scala using Free is horrendously slow at the moment, so what makes it faster?
2013-11-28 09:49:07![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@kmett @nuttycom @viktorklang Monad transformers have megamorphic, trampolined overhead proportional to # of layers. Can't get worse.
2013-12-28 04:13:07![](https://tgfile.tg-static.com/static/web/img/placeholder.gif)
@kmett @nuttycom @viktorklang EE have far fewer megamorphic dispatches; can probably be optimized 4 non-overlapping / statically known fx.
2013-12-28 04:16:04