Q about integration options



Hello Jaime, you wrote:

> I am interested in integrating Maxima into a Microsoft application (a
> mixture of .NET and unmanaged code).  Although automating the command line
> application through programmatic redirection of input, output, error, etc is
> feasible, I was hoping for a deeper integration option (a COM object, .NET
> assembly, CORBA).  Does anyone have experience with this?  If something like
> this doesn't exist, is there any interest in working with me to create such
> an interface?  I would be very happy to contribute this if the experiment
> proves feasible. 

There are various projects which integrate Maxima into a 
larger framework. There are (at least) two projects which 
build a web service around Maxima -- one project in Portugal
and one in Hungary iirc. There are also various user interfaces
(emaxima, xmaxima, some others) which have the same flavor.

The major difficulty that I see you might run into is that Maxima 
doesn't always respond to an input with an output -- Maxima 
might decide it wants additional input before responding, 
or it might have no response if there is an error.
This makes it difficult to treat Maxima as a black box into
which you dump an input and get an output, and there is 
at present no way to enable a strict input-output behavior.

The web services and user interfaces mentioned above all
have ways of working around the lack of input-output behavior.
However if you were to investigate this issue and make some
recommendations about how to enable strict input-output behavior,
I believe that would be a very substantial contribution to the project.

Translating Maxima objects (Lisp expressions) into XML or
CORBA objects would be some work, but it is, I believe, 
a secondary problem under the circumstances.

I'm sure there is a word for "strict input-output behavior" but
you'll have to excuse my limited vocabulary.

Thanks for your interest in Maxima and I wish you great success.
As ever my advice is worth what you paid for it.

Robert Dodier