Hello!

First of all, thanks a lot for lyx/klyx. That's almost program #1 that
I invoke when I want to push people to use Open Source software. I
still use LaTeX for big documents, but am more and more switching to
lyx for small documents. I also use lyx to type in my class notes, and
present them with an LCD in the classroom.

Anyway.

I don't know if you have been using MuPAD. It's a free computer
algebra system which is very powerful, but lacks an nice graphical
interface like for example maple have. The nice thing with this
graphical interface is that you create notebooks, with a mix of text
(with nice layout, sections, ...), pieces of code that you can
execute, and the results of the execution of those pieces of code.
Actually, this is precisely a form of literate programming, but
designed for an interpreted language, where you can send interactively
pieces of code. It would be great to have such an interface for MuPAD,
or more generally for various interpreted languages.

Well lyx now has support for literate programming, and has everything
(in particular a great equation editor) to create, edit and print-out
notebooks. It seems the only missing part is the communication with an
external interpreter.

Of course, the best would be to have support for exchange of maths
formula, in order to use the equation editor to prepare the input for
the interpreter, and to have a nice display of the result of the
computations. This might be difficult in a first time, if the
interpreter does not use a standard language (mathml?) for
input/output. A first step would be to have a pure text input
environment (variant of the Scrap environments) whose content can be
sent to an external interpreter. When the interpreter gives back the
answer, an output environment is created (or updated) right after the
input environment and displays the result.

There will probably be non-trivial problems of synchronization with
the interpreter. It might be necessary to modify the interpreter to
add some clear delimitation of beginning and end of output, which can
be difficult if the sources of the interpreter are not fully
available. The sources of the kernel of MuPAD are not. Well, I know
some of the developers, so maybe I could have access to them to make
the required minor modifications.

For me, the main goal would be to have a nice interface to MuPAD. This
would be a major help to promote it against maple or other commercial
systems. However, it should be easy to write it in a sufficiently
enough general manner in order to make it usable with many other
interpreted systems.

I am actually thinking of giving this as a computer project for
graduating students. This is still at a very preliminary stage. I
would need to browse seriously the web to see if other existing tools
could do the job. I also need to discuss about this with the team of
MuPAD. Anyway, if this works out, I can have 3 students working on
this 40 hours a week for 6 weeks (may-june). I also would give a hand,
and I hope to get the students interested enough so that the continue
working on it after.

Of course, such a project is only interesting if it's done in close
collaboration with the development team of lyx. Would you be
interested by such an extension of lyx ? Do you have an idea of how
hard this would be to implement ?

Thanks in advance,

Best regards,
                                        Nicolas Thiéry
-- 
Nicolas M. Thiéry "Isil", 412 Washington Avenue, 80403 Golden Colorado (USA)
Mél: [EMAIL PROTECTED], Tél: (303)273-5492, Fax: (303)273-3875
WWW: <URL:http://www.mines.edu/~nthiery/>

Reply via email to