
On the general notion of continuations, I believe Matt Might's blog explains it quite well using Javascript. http://matt.might.net/articles/by-example-continuation-passing-style/ In the way of a simple example, he suggests that instead of writing function id(x) { return x ; } a CPS version might write: function id(x,ret) { ret(x) ; } etc... IMO things appear confusing to newbies (it happened to me once too) when people dont use intuitive names for obvious things like continuations On Fri, Sep 30, 2011 at 11:42 PM, Mark Spezzano < mark.spezzano@chariot.net.au> wrote:
Hi,
Can someone please give me a _lucid_ and _simple_ explanation of exactly how continuations can be used in Haskell?
I've already had a look at most of the tutorials and explanations on the web, but I'm still confused. Continuations and CPS have me baffled. (I have most of the Haskell textbooks and even these are sketchy on Continuations)
I don't understand the notion of the Cont monad and how it can be used for multitasking, backtracking and interrupting computations. I understand that functions take in a (continuation) function that represents the work remaining to do, but al of the explanations on the web and in technical papers seems to trip over themselves in explaining the fundamentals to a CPS-newbie.
If anyone could explain such concepts to me in unambiguous, clear English then this would be very helpful.
Thanks in advance for your help,
Mark
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe