[rdnzl-devel] Re: rdnzl, multiprocessing, Allegro, windows, locking
Edi Weitz
edi at agharta.de
Sat Oct 14 16:32:50 UTC 2006
[Re-sending my reply to the mailing list to which I thought this was
sent originally. My mail address is edi at agharta.de by the way, and
not rdnzl-devel-owner at common-lisp.net...]
On Fri, 13 Oct 2006 09:16:07 -0700, "Richard Fateman" <fateman at cs.berkeley.edu> wrote:
> Here is what I think I is the smallest program to open a window..
>
> (enable-rdnzl-syntax)
> (import-types "System.Windows.Forms" "Form" "Application" )
>
> [Application.Run (new "Form")]
For newcomers trying to copy this: You need to add the line
(use-namespace "System.Windows.Forms")
before you run the application.
> However, started from an emacs buffer, this locks up everything
> until the window is killed.
>
> I can put this in another Allegro OS process by doing this..
> (mp::process-run-function "myprocessname" [Application.Run (new
> "Form")])
>
> But this also locks up everything until the window is killed.
I think that's a problem related to the IDE and not to RDNZL. In
LispWorks 5.0, for example, if I start the apropos example coming with
RDNZL (which also uses Application.Run) with MP:PROCESS-RUN-FUNCTION
as suggested in the RDNZL documentation it runs fine without locking
the IDE, i.e. I can still use the listener or other graphical tools
while the .NET window is up and interacting.
> How can I do this in rdnzl? Can I mix CG and rdnzl?
I don't know much about CG but I think that will be very hard or
impossible. But that's not a problem of Lisp/RDNZL. I think it would
be equally hard to mix a C++ program using MFC with a C# program using
.NET's windows forms.
More information about the rdnzl-devel
mailing list