Hacker News new | past | comments | ask | show | jobs | submit login

That's the expression problem. But you can have the best of both worlds with various approaches. One nice one is called tagless final encodings in fp and object algebras in oop.

In haskell this is called mtl-style classes and quite common. Here is a blog post that describes how to split applications into an imperative, oop and functional layer. The oop layer uses mtl-style classes: https://www.parsonsmatt.org/2018/03/22/three_layer_haskell_c...




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: