>> I have no idea why you think ECLS is a silver bullet. > >I forgot one important argument here: With ecls you can embed the lisp >interpreter into an external library, hence we would be able to use >Maxima as a library instead of using the inefficient pexpect >interface. I am not sure how much work this would be, but if I were a >Maxima coder I would certainly look into that possibility since it >opens a whole lot of possibilities for Maxima IMHO - totally >independent of Maxima's role in Sage.
I looked at pexpect. It appears to be a process controller of sorts that interprets and parses console I/O. Axiom has its own version called sman (superman). You don't normally type directly at the axiom command prompt but are talking to sman which mediates the console i/o. Sman manages a set of processes (the AXIOMsys interpreter, the graphics, hyperdoc, etc) but makes it appear that you are talking to axiom. You could talk directly to the AXIOMsys system prompt or directly to AXIOMsys thru a network port (which is how the Axiom Firefox works). But sman doesn't actually parse anything at all. It is just a very small C program which forks processes and sets up ptys and thus has nearly zero overhead. I'm not sure what Maxima does. But I'd bet that almost all of the overhead you're seeing isn't Maxima but pexpect delay. Somebody is probably playing parsing games to get prompt and end-of-input processing and that has got to cost a lot. Why not just reach into the lisp and do it directly? Why use a console connection at all? Using pexpect has got to be the worst of all possible ways to talk to Maxima. In any case, it is certainly possible to use lisp as a library element rather than using pexpect. I'm not sure why ECLS is special in this context since I've never used it. Tim --~--~---------~--~----~------------~-------~--~----~ To post to this group, send email to sage-devel@googlegroups.com To unsubscribe from this group, send email to [EMAIL PROTECTED] For more options, visit this group at http://groups.google.com/group/sage-devel URLs: http://www.sagemath.org -~----------~----~----~----~------~----~------~--~---