[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: CPS in Parrot
> Date: Wed, 6 Aug 2003 13:51:17 -0400
> From: Matthias Felleisen <matthias@ccs.neu.edu>
>
> On Wednesday, August 6, 2003, at 02:29 AM, Michael Sperber wrote:
>
> >>>>>> "Michael" == Michael Vanier <mvanier@cs.caltech.edu> writes:
> >
> > Michael> "And, just to top it off, someone (no, I don't know who, so
> > this might be
> > Michael> CS Legend) once proved that you can build any control
> > structure you can
> > Michael> think of with continuations."
> >
> > @INPROCEEDINGS{Filinski1994-popl,
> > CROSSREF = {POPL1994},
> > AUTHOR = {Andrzej Filinski},
> > TITLE = {Representing Monads}, YEAR = 1994,
> > PAGES = {446-457}
> > }
> >
>
> It depends on what you mean with "build". It is certainly not true that
> FunctionalScheme + callcc
> can express F (my good old friend that produces composable
> continuations, which eventually
> made it into Mach 4). I also don't see how FunctionalScheme + callcc
> can express prompt.
Pardon my ignorance, but what are F and prompt? Do you mean System F
(polymorphic typed lambda calculus)? Also, what does Mach 4 refer to?
I'm lost :-(
>
> I am also willing to throw in set! and challenge you again to define
> "build" in a way that excludes
> at least thing.
At least thing?
>
> My own definition of "build" was published as On the expressive power
> of programming languages.
http://www.ccs.neu.edu/scheme/pubs/scp91-felleisen.ps.gz
>
> The small stack slices that Michael mentions were first around in MIT
> Scheme and Chez Scheme.
> But Mike's reference to Clinger's paper is appropriate.
I can't find it on citeseer, though. Does anyone know if it's available
online?
Mike
>
> -- Matthias
>
>
> > I'm sure it's on Andrzej's homepage or on Citeseer.
> >
> > Michael> Also, Dan doesn't mention segmented stack architectures that
> > are
> > Michael> essentially a linked list of stacklets of finite size. With
> > this you can
> > Michael> avoid most of the overhead of both stack copying (on the one
> > hand) and
> > Michael> heap-allocated individual frames (on the other hand). PLT
> > scheme uses this
> > Michael> system. There is a paper on this, but I can't find it right
> > now.
> >
> > PLT's implementation of CALL/CC (and threads) is still pretty
> > expensive. The paper to look at is
> >
> > @Article{Clinger:1999:ISF,
> > author = "William D. Clinger and Anne H. Hartheimer and Eric M.
> > Ost",
> > title = "Implementation Strategies for First-Class
> > Continuations",
> > journal = "Higher-Order and Symbolic Computation",
> > volume = "12",
> > number = "1",
> > pages = "7--45",
> > month = apr,
> > year = "1999"
> > }
> >
> > --
> > Cheers =8-} Mike
> > Friede, Völkerverständigung und überhaupt blabla
>