[racket] instantiating multiple sandboxes with gui's
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>