[Maxima] A couple of questions

R Fateman fateman at cs.berkeley.edu
Wed Mar 11 06:35:02 CDT 2009

I don't know the answers to all your questions, but here are a few...  I 
think that people who have been working with arrays should have more 

iga Lenarčič wrote:
>  It would be interesting to have  
> maxima on JVM with reasonable speed (at least in the range of GC

This is unlikely to be as fast as a lisp compiled to machine code.

> it would mean that maxima would work on 90% of computers on this  
> planet (though JVM is not opensource if I'm not mistaken).
90% of the machines are probably window/intel machines so this has been 
(plus the linux/intel machines.)
>  Accessing  
> java classes could alse be very beneficiary to maxima in various ways  
> (faster plotting, interactive features, gui, numerical libraries...)  
I doubt that there is a benefit to using java for plotting compared to 
using gnuplot, at least for speed.
> Also has anyone been successful with running maxima in SBCL on  
> windows? 
I think the answer is yes, but there are deficiencies in SBCL that could 
be a problem
> I think Maxima could benefit a lot from calling external  
> libraries 
definitely, yes.  This can be done with other Lisps, and does not 
require ABCL.
I use external libraries from Lisp often.
> - that's how all the big ones get their numerical speed  
> (MATLAB, Mathematica, Octave, R) - via calling BLAS+Lapack. Sadly  
> most of the users are running gcl on windows so it's kind of  
> impossible to work in this direction until we have a Maxima+lisp  
> combination that runs well on all common platforms (windows, linux,  
> mac os x). 
There are several.  The one I use is not open source.  The trial version 
is free, and can run Maxima.

> I think supporting many different lisps is not good in a  
> sense that developers' time would be much better spent on other  
> things and prevents them from implementing new things that wouldn't  
> be compatible with all the lisps.

If only people agreed on one religion, think about how much time could 
be spent on better things.
> 2) Regarding matrix implementation in maxima: Currently matrices are  
> lists of lists. 
This is not the only way.  You can also use lisp arrays, as you 
mention.  though I don't know the details.

>  Perhaps even maxima lists can be implemented as arrays?
This is probably a bad idea. Adding an object to the front of a list 
takes very little time.  Adding
an object to the front of an array requires copying the whole array.

>  in Mathematica everything is a  
> list, 
no, in Mathematica, the word List means "1-dimensional array".

More information about the Maxima mailing list