Re: Is Xlisp-Stat Dead?



Ross Ihaka wrote:

R is now being applied to much bigger problems than we
ever anticipated and efficiency is a real issue. What
we're looking at now is implementing a thin syntax over
Common Lisp.

Well, I wonder if you have looked at Maxima, a computer algebra
program written in CL. The Maxima language is sort of a watered-
down Algol derivative; it is rather idiosyncratic, but I don't think
it
would be hard to replace it. Anyway, it is easy to drop into Lisp
from Maxima, and easy to write stuff in Lisp and get Maxima to
call it and vice versa.

I believe Maxima has a lot of potential as a tool for statistics,
through the combination of symbolic and numerical programming.
There are some basic statistical packages at present, and I am
hoping we'll write more in the near future. I have a special
interest in Bayesian inference; I believe that's especially suitable
for mixed symbolic/numerical methods.

For better or worse, code written in Maxima is typically much,
much slower than similar code written in Lisp, because Maxima
assumes any and every result might be symbolic instead of
numerical. There is a Maxima --> Lisp translator but from what I
can tell it only speeds stuff up by, say, a factor of 10 when 100
or 1000 is needed to match native (purely numeric) Lisp code.
But a Maxima function could easily detect if all arguments are
numbers and then punt to a Lisp library for that case; then almost
all of the processing would be in native Lisp code.

There is lots to do. We're experimenting with syntax and
making a start on assembling quality numerics libraries.

If/when you have some CL libraries to release, we'll be very
interested to hear about it. I would be inclined to consider
merging it into Maxima (only if the license permits, of course).
Maxima has absorbed various numerical packages over the
years and it's likely that trend will continue.

Incidentally recently we've discussed a Maxima implementation
of R's data frame object. In this case we're borrowing a design
instead of code.

best,

Robert Dodier
Maxima developer
.


Loading