Question to Maxima Programmers



Dear Maxima programmers,

I have incorporated Maxima into my program Euler some time ago, and am very happy with this combination of MatLab like computation and symbolic algebra. However, with 5.15.0 I got a severe problem I cannot solve.

I am using pipes to speak to Maxima and get the results. This works well, besides the problem that I am doing hard to determine the end of a Maxima computation. Maxima sometimes sends its output in two chunks, so I cannot simply wait until no character is available in the input line. 

Until now, I used the input prompt to determine the end of the output. However, in Version 5.15.0 Maxima sends this prompt even between multiple commands in a line. So, sending "10; 20;" will return the two prompts. The Maxima output looks like:

(%o1)                                 10
(%i2) (%o2)                                 20
(%i3)

Sometimes it stops after (%i2) and sends the rest in a separate chunk.

Before, the Maxima output was

(%o1)                                 10
(%o2)                                 20
(%i3)

So, I am stuck here, since I can no longer determine the end of the Maxima output, unless I analyze the input myself and count the commands (a nuisance, which might even not work).

Has anyone an idea how to solve this?

R. Grothmann