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