On Nov 3, 7:55 pm, Nils Bruin <nbr...@sfu.ca> wrote: > It is just a separate python module, not explicitly placed in the sage > tree. It depends on two tickets that are ready for review. Kcrisman > has already looked at them, but they could use some attention from > someone familiar with lisp. > http://trac.sagemath.org/sage_trac/ticket/6781 > http://trac.sagemath.org/sage_trac/ticket/7287
I am sorry I do not have more time to look into this, but it looks great! Only a few comments: * Lisp routines typically do not output a trailing newline character. If anything, they output one _before_, to ensure that the output begins with a fresh line. This explains some things you already observed. * Maxima can be built as executable and library using the same project. This would be interesting to keep support for both interfaces: pexpect and your code. * my-safe-eval could be improved to handle multiple values if you need to. In the mean time I should fix ECL's safe-eval so that you do not need to implement this yourself. * cl_shutdown() is actually not needed if your environment implements atexit(), because ECL will then perform all cleanup before quitting. Well, this works unless your program calls abort(). > It demonstrates how easy ECL's library interface can be used to > robustly interface with Maxima. As an example: [...] > Note the call to meval. That is really just a pointer to the LISP > function meval that corresponds to Maxima's expression evaluator. > For the ECL developers, the fact that it is so easy to develop such a > tight interface between python and ECL could really be used as a major > advertising point. I am always planning to build a success story page for the project, but lately Sourceforge has blocked all editing of our wiki, and it will have to wait. But this would be definitely a very good story to tell there! (And also a good example of a complex setup in which ECL can be embedded and use, with plenty of code to read and learn!) --~--~---------~--~----~------------~-------~--~----~ To post to this group, send an email to sage-devel@googlegroups.com To unsubscribe from this group, send an email to sage-devel-unsubscr...@googlegroups.com For more options, visit this group at http://groups.google.com/group/sage-devel URL: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---