I think it helps if you don't think about a single axis (functional vs imperative), but in two axis (functional vs procedural, declarative vs imperative).
When you use IO with do notation, you are actually doing imperative functional programming.
When you use IO with do notation, you are actually doing imperative functional programming.
No comments yet.