[plt-scheme] mzscheme with @$%@$mred-kernel
At Mon, 3 Oct 2005 20:06:37 +0100, ben kavanagh wrote:
> Thanks Matthew, Jay. The 'mred -z' was already in the quark elisp code. So
> yay that solved the mred-kernel load problem all right, but I'm trying to
> run plt/redex and although running 'mred -z' allows me to load my program
> and call it, whereupon it opens a window, the GUI thread doesn't appear to
> be getting any cycles as it doesn't respond/draw etc [...]
> Is this a known issue
> and is there a known workaround?
Ah, right. I forgot about this.
The usual workaround is to start with
(current-eventspace (make-eventspace))
That way, the REPL doesn't block the eventspace main thread.
But if you do that, then it's technically bad to directly `require' a
module for a GUI program, since the module will expect to be loaded in
the eventspace's main thread. Queueing a callback avoids that problem,
but you can't put a top-level `require' in a callback function, and so
it's inconvenient.
I should add something like -z that puts the REPL in a different
eventspace and queues evaluation in the original, more like DrScheme.
Meanwhile, maybe evaluating the above expression will let you get work
done.
Matthew