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
comments.
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
achieved.
(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".