[racket] instantiating multiple sandboxes with gui's

From: Spencer Florence (spencer at florence.io)
Date: Sat Apr 5 15:20:18 EDT 2014

In xrepl that program catches breaks as well, so that behavior is probably
fine and unavoidable.

Although somehow drracket's repl managed to break out of that program. I
wonder how it does that...


On Sat, Apr 5, 2014 at 3:00 PM, Sam Tobin-Hochstadt <samth at cs.indiana.edu>wrote:

> What if you do this:
>
>     (let l () (with-handlers ([void (l)]) (l)))
>
> This catches `exn:break` (and everything else) and calls `l`.
>
> Sam
>
> On Sat, Apr 5, 2014 at 2:54 PM, Greg Hendershott
> <greghendershott at gmail.com> wrote:
> >> thread cells are subject to GC and that's fine. The real issue is that I
> >> might write a program that does (effectively) this:
> >>
> >>  > (let l()(l))
> >>
> >> and then I'm stuck.
> >
> > Good point, but that's not a problem. A break returns to
> read-eval-print-loop.
> >
> > Example transcript:
> >
> >> (let l () (l))
> > C-cC-c
> > ; user break
> >> (displayln "broken but alive")
> > broken but alive
> >>
> >
> > (The double Control-C just being necessary as usual in an Emacs
> comint-buffer.)
> > ____________________
> >   Racket Users list:
> >   http://lists.racket-lang.org/users
> ____________________
>   Racket Users list:
>   http://lists.racket-lang.org/users
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.racket-lang.org/users/archive/attachments/20140405/c05cf1e6/attachment.html>

Posted on the users mailing list.