wm1@cunixb.cc.columbia.edu (Wilfredo Marrero) (04/29/91)
My class and I are struggling a bit with continuations. Ableson and Sussman do not discuss them in their textbook, while Springer and Friedman describe call/cc using escape procedures and contexts. While this does seem to produce a model that works, it is extremely confusing and can be used to explain only the simplest of examples. It is obvious that experts "out there" use continuations productively, so we are all fairly certain that there must be an easier way of explaining them. If anyone knows of a place to get a few simple but practical/usefull examples of the uses of call/cc or of another text which covers this topic, please let me know. Of course, any first hand explanations of call/cc would also be greatly appreciated. My address is: wm1@cunixb.cc.columbia.edu Will Marrero
gyro@cymbal.reasoning.COM (Scott Layson Burson) (05/01/91)
Date: Mon, 29 Apr 1991 16:05:33 GMT From: Wilfredo Marrero <wm1@cunixb.cc.columbia.edu> My class and I are struggling a bit with continuations. Ableson and Sussman do not discuss them in their textbook, while Springer and Friedman describe call/cc using escape procedures and contexts. While this does seem to produce a model that works, it is extremely confusing and can be used to explain only the simplest of examples. It is obvious that experts "out there" use continuations productively, so we are all fairly certain that there must be an easier way of explaining them. If anyone knows of a place to get a few simple but practical/usefull examples of the uses of call/cc or of another text which covers this topic, please let me know. Of course, any first hand explanations of call/cc would also be greatly appreciated. Well, I'm not an expert in Scheme pedagogy, but I would consider the understanding of continuations to be rather optional in a first course on Scheme. Dick Gabriel has frequently expressed his opinion that they should be removed from the language entirely, and if I thought of Scheme as primarily a teaching language, I might well agree with him. However, as it happens, I think of Scheme as a powerful AI-oriented systems language -- this is, after all, what it was invented for; it was only after the fact that people decided it would also be a good language for teaching (correct, GLS?) -- and therefore I think that continuations have a place in Scheme as a powerful, subtle construct whose use, in expert hands, can be extremely valuable. But I am inclined to agree with Dick to the extent of thinking that beginning and even intermediate-level Scheme programmers are better off ignoring the existence of CALL/CC. -- Scott Gyro@Reasoning.COM