From: "Marlene Miller" <marlenemiller@worldnet.att.net>
To: help-gnu-emacs@gnu.org
Subject: Re: The fundamental concept of continuations
Date: Wed, 10 Oct 2007 04:39:32 GMT [thread overview]
Message-ID: <8IYOi.658994$p47.379449__33778.4897107214$1192017527$gmane$org@bgtnsc04-news.ops.worldnet.att.net> (raw)
In-Reply-To: 1191906949.179197.217470@57g2000hsv.googlegroups.com
> Can anyone explain:
>
> (1) its origin
From the Bibliographic Notes of Chapter 12 Continuations in a Functional
Language, Theories of Programming Languages by John C. Reynolds, page 370:
"A history of the repeated discoveries of continuations (occurring largely
in the context of functional languages) is given in Reynolds [1993];
relevant original papers include those by van Wijngaarden [1996], F. L.
Morris [1993], Strachey and Wadsworth [1974], J. H. Morris [1972], Fischer
[1972; 1993], and Abdali [1976]. The operations callcc and throw first
appeared in Scheme, but are descendents of Landin's [1965b] "J-operator".
Both the continuation-passing transformation from direct to continuation
semantics and defunctionalization were described, in the setting of programs
for interpreting eager-evaluation functional languages, by Reynolds
[1972a]."
"Beginning with the implementation of Scheme [Sussman and Steele Jr., 1975]
continuations and the continuation-passing transformation have played a
major role in the design of compilers. More recently, this topic has been
explored at book length by Appel [1992]."
Reynolds [1993] The Discoveries of Continuations.
van Wijngaarden [1996] Recursive Definition of Syntax and Semantics
F. L. Morris [1993] The Next 700 Formal Language Descriptions
Strachey and Wadsworth [1974] Continuations, A Mathematical Semantics for
Handling Full Jumps.
J. H. Morris [1972] A Bonus from van Wijngarden's Device
Fischer [1972, 1993] Lambda Calculus Schemata
Abdali [1976] A Lambda Calculus Model of Programming Languages - I. Simple
Constructs, II. Jumps and Procedures
Sussman and Steele Jr. [1975] SCHEME: An Interpreter for Extended Lambda
Calculus
Compiling With Continuations, Andrew W. Appel, 2007
- - - - - - - - - -
> (2) its syntax and semantics in emacs lisp, common lisp, scheme
The Scheme Programming Language, R. Kent Dybvig
3.3 Continuations
5.5 Continuations
http://www.scheme.com/tspl3/
Scheme and the Art of Programming, Springer and Friedman
Chapter 16 Introduction to Continuations
Chapter 17 Using Continuations
- - - - - - - - - - - - -
> (6) any good readable references that explain it lucidly ?
1. Programming Languages: Application and Interpretation, Shriram
Krishnamurthi
Part VII Continuations
http://www.cs.brown.edu/~sk/Publications/Books/ProgLangs/2007-04-26/plai-2007-04-26.pdf
2. Essentials of Programming Languages, Friedman, Wand and Haynes
Chapter 7 Continuation-Passing Interpreters
Chapter 8 Continuation-Passing Style
http://www.cs.brown.edu/~sk/Publications/Books/ProgLangs/2007-04-26/plai-2007-04-26.pdf
3. Theories of Programming Languages, John C. Reynolds
5.7 Continuation Semantics [of imperative languages]
Chapter 12 Continuations in a Functional Language
http://www.cs.indiana.edu/eopl/
From the Bibliographic Notes of Chapter 5 Failure, Input-Output and
Continuations, Theories of Programming Languages, John C. Reynolds
"Most of the literature on continuations discusses the concept in the
setting of functional languages (where we will return to continuations in
Section 12.1). However, the properties of continuation semantics for
imperative languages are described, perhaps to excess, by Reynolds [1977]."
Reynolds [1977] Semantics of the Domain of Flow Diagrams
next prev parent reply other threads:[~2007-10-10 4:39 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 [this message]
[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
[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='8IYOi.658994$p47.379449__33778.4897107214$1192017527$gmane$org@bgtnsc04-news.ops.worldnet.att.net' \
--to=marlenemiller@worldnet.att.net \
--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).