Matt Munz writes: > Nascif, > > I have been curious about the BeanShell since I heard about it, but haven't > tried it yet. It sounds like you're familiar with it. > > Nacif> It is easy to have a Lisp function calling a Java method, using the > BeanShell; not so much to do the reverse. > > Is this really true? It seems to me that your BeanShell app can spit out > arbitrary lisp code as a text stream that could be dynamically loaded in > emacs. Can you elaborate on what specifically makes it difficult to do 2-way > interactions with BeanShell apps? >
This is what JDE beanshell apps do now. The JDE Lisp function bsh-eval-r accepts an arbitrary string of Java code as an argument, e.g., invocation of a static method defined by a JDE app, and sends it to the Beanshell's standard input. It then suspends Emacs until it receives a response from the Beanshell. bsh-eval-r assumes that the response is a Lisp form. When it receives the Lisp form, bsh-eval-r evaluates it. - Paul
