[MLton] Continuations and MLton.Vector.create

Vesa Karvonen vesa.karvonen@cs.helsinki.fi
Wed, 29 Mar 2006 16:56:07 +0300


Quoting Stephen Weeks <sweeks@sweeks.com>:
> > I agree with your argument, I guess, if tabulate does some strange
> > things, but if I can mutate a vector, then I would say that the only
> > solution is to not have call/cc at all.
> 
> That's not unreasonable, and is certainly how I view the situation (I
> never use callcc).  But I think it's nice to have the callcc
> implementation there for those who want to learn about it.  And if
> someone ever wants to use callcc in serious code, they will be
> motivated to build the wrapper functions.

As it happens, I have plans to use callcc in "serious" code that might,
under some circumstances, end up being used in a commercial product (no
guarantees at this point).  Specifically, I plan to use callcc to implement
an embedded Scheme interpreter (using techniques like described in Benton's
article on embedded interpreters).  AFAICS, having callcc simplifies things
considerably.

-Vesa Karvonen