Message from discussion Implementation Favoritism, a question of Lisp mindsets
Reply-To: "Kumar Balachandran" <kumarbalac...@earthlink.net>
From: "Kumar Balachandran" <kumarbalac...@earthlink.net>
References: <jkCma.9$NE4.email@example.com> <firstname.lastname@example.org> <email@example.com> <20030415104420.G13181@lain.cheme.cmu.edu> <firstname.lastname@example.org> <20030415182228.H13181@lain.cheme.cmu.edu> <email@example.com> <firstname.lastname@example.org> <email@example.com>
Subject: Re: Implementation Favoritism, a question of Lisp mindsets
X-Newsreader: Microsoft Outlook Express 6.00.2800.1106
X-MimeOLE: Produced By Microsoft MimeOLE V6.00.2800.1106
Date: Fri, 18 Apr 2003 06:06:04 GMT
X-Trace: tornadotest1.news.pas.earthlink.net 1050645964 126.96.36.199 (Thu, 17 Apr 2003 23:06:04 PDT)
NNTP-Posting-Date: Thu, 17 Apr 2003 23:06:04 PDT
Organization: EarthLink Inc. -- http://www.EarthLink.net
I can understand the standard simple examples that are typically quoted, and
I can easily think in terms of machine language to figure out how call/cc
would work. However, any serious scheme code with call/cc seems so bloody
obfuscated to me, I always give up trying to understand it.
If programs are a method of communicating with other programmers, then
call/cc has failed miserably, rather like my poem below.
Little Jack Horner
sat in a corner
Coding and Scheming against LISP.
He called Forth
but on continuation felt something amiss.
Seriously, I have never found the patience to really grok this wonderful
thing. I can always achive the set goals in a very readable manner in other
> A note to other Lisp newbies like me:
> There is no reason to fear continuations. They are merely a way to
> jump out of a function before the function would normally finish.
> The function is just "paused" at the point where the continuation was
> activated in the middle of the function.
> The function can then be "resumed" later if desired, at the exact point
> in the code where it was paused or interrupted.
> As you can imagine, jumping out of a function before it is normally due
> to finish can cause all sorts of problems.
> Jumping back into the middle of a 'suspended' function can also cause
> all sorts of problems.
> Despite all this, continuations allow for all sorts of flexibility if
> they are used when no other means is available to solve a particular
> programming problem.