unofficial mirror of help-gnu-emacs@gnu.org
 help / color / mirror / Atom feed
From: David Kastrup <dak@gnu.org>
To: help-gnu-emacs@gnu.org
Subject: Re: The fundamental concept of continuations
Date: Wed, 10 Oct 2007 12:49:58 +0200	[thread overview]
Message-ID: <85zlyrutux.fsf__32840.103764511$1192016467$gmane$org@lola.goethe.zz> (raw)
In-Reply-To: 1191906949.179197.217470@57g2000hsv.googlegroups.com

gnuist006@gmail.com writes:

> Again I am depressed to encounter a fundamentally new concept that I
> was all along unheard of. Its not even in paul graham's book where i
> learnt part of Lisp. Its in Marc Feeley's video.
>
> Can anyone explain:
>
> (1) its origin
> (2) its syntax and semantics in emacs lisp, common lisp, scheme
> (3) Is it present in python and java ?
> (4) Its implementation in assembly. for example in the manner that
> pointer fundamentally arises from indirect addressing and nothing new.
> So how do you juggle PC to do it.
> (5) how does it compare to and superior to a function or subroutine
> call. how does it differ.

Basically, there is no difference to function/subroutine call.  The
difference is just that there is no "call stack": the dynamic context
for a call is created on the heap and is garbage-collected when it is
no longer accessible.  A continuation is just a reference to the state
of the current dynamic context.  As long as a continuation remains
accessible, you can return to it as often as you like.

-- 
David Kastrup, Kriemhildstr. 15, 44793 Bochum

  parent reply	other threads:[~2007-10-10 10:49 UTC|newest]

Thread overview: 35+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1191906949.179197.217470@57g2000hsv.googlegroups.com>
2007-10-09  5:59 ` The fundamental concept of continuations Barb Knox
2007-10-09  6:07 ` Bakul Shah
2007-10-09  6:09 ` .
     [not found] ` <see-36543E.18592809102007@lust.ihug.co.nz>
2007-10-09  6:24   ` gnuist006
     [not found]   ` <1191911045.604596.50110@19g2000hsx.googlegroups.com>
2007-10-09 13:21     ` Joel J. Adamson
2007-10-14 22:56   ` Lawrence D'Oliveiro
2007-10-15  4:17     ` George Neuner
     [not found] ` <470b1aa6$0$79886$742ec2ed@news.sonic.net>
2007-10-09  6:33   ` gnuist006
     [not found]   ` <1191911604.169846.244430@r29g2000hsg.googlegroups.com>
2007-10-09  7:15     ` Bakul Shah
     [not found] ` <470b1b30$0$11022$4c368faf@roadrunner.com>
2007-10-09  6:34   ` gnuist006
     [not found]   ` <1191911662.983658.79540@g4g2000hsf.googlegroups.com>
2007-10-09 10:00     ` Tim Bradshaw
     [not found]     ` <1191924032.449463.13290@22g2000hsm.googlegroups.com>
2007-10-09 10:13       ` Diez B. Roggisch
2007-10-09 12:50   ` Matthias Blume
2007-10-09 13:50   ` josephoswald+gg@gmail.com
2007-10-09 19:20   ` gnuist006
     [not found]   ` <m2641g1mgn.fsf@my.address.elsewhere>
2007-10-09 19:37     ` gnuist006
2007-10-09 20:41       ` Chung-chieh Shan
2007-10-10  0:47       ` Matthias Blume
     [not found]       ` <ok5tt4-2ij.ln1@mantle.rutgers.edu>
2007-10-10  4:52         ` Marlene Miller
     [not found]   ` <1191957606.187050.272820@v3g2000hsg.googlegroups.com>
2007-10-09 20:32     ` .
2007-10-09  7:11 ` Peter Danenberg
2007-10-09 12:05 ` Matthias Benkard
2007-10-09 18:18 ` George Neuner
     [not found] ` <m5ang3h11oorvsrkit4q1moi6mirofbdbr@4ax.com>
2007-10-09 19:24   ` gnuist006
2007-10-09 19:27 ` Jeff M.
2007-10-10  4:39 ` Marlene Miller
     [not found] ` <8IYOi.658994$p47.379449@bgtnsc04-news.ops.worldnet.att.net>
2007-10-10  4:46   ` Marlene Miller
2007-10-10  7:11 ` Dmitri Minaev
2007-10-10 10:49 ` David Kastrup [this message]
     [not found] ` <85zlyrutux.fsf@lola.goethe.zz>
2007-10-11  7:18   ` George Neuner
     [not found]   ` <rqhrg3d2thcqaip790k1eb6t8cdk2g8d8v@4ax.com>
2007-10-12 19:17     ` David Kastrup
     [not found]     ` <85lka8p2h4.fsf@lola.goethe.zz>
2007-10-13  3:11       ` Rob Warnock
2007-10-13  3:13       ` Paul Rubin
     [not found] ` <1191931524.047907.98040@v3g2000hsg.googlegroups.com>
2007-10-13 23:14   ` Alex Martelli
2007-10-09  5:15 gnuist006

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

  List information: https://www.gnu.org/software/emacs/

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='85zlyrutux.fsf__32840.103764511$1192016467$gmane$org@lola.goethe.zz' \
    --to=dak@gnu.org \
    --cc=help-gnu-emacs@gnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).