4 ms·
Your point is spot-on. > A better analogy would be an argument about exposing call/cc in scheme. Is call/cc good language design? There are arguments on both s
by copper 17y ago
Your point is spot-on.
> A better analogy would be an argument about exposing call/cc in scheme. Is call/cc good language design? There are arguments on both sides. Haskell does continuations differently than Scheme. Which is "better"?
To clarify this, here's a couple of questions whose answers might amuse you.
Is it possible to implement explicit continuations in terms of monads?
Is it possible to implement monads in terms of explicit continuations?
If it is possible to implement A in terms of B (and not vice versa), then B is more basic than A.
- wedesoft 17y agoThat's why I prefer Ruby over Python. It unifies loops and iterators using closures. At the same time the syntax "pretends" to be simple so that you can start using Ruby straight away without having to understand continuations and closures. But I think a language which manages to hide the complexity of monads without removing them will blow Clojure out of the water.
- copper 17y ago> I think a language which manages to hide the complexity of monads without removing them Hm, I'm not sure this is possible: a great part of the "complexity" of monads is because it's a similar (and fairly simple!) structure that applies to a great many apparently unrelated concepts: function sequencing, backtracking, and what have you.