From: Kenneth P. Turvey
Subject: Good Matrix Package?
Date: 
Message-ID: <slrn70ib2p.6kn.kturvey@www.sprocketshop.com>
Can anyone recommend a collection of functions implementing matrix
arithmetic (including efficient inversion) that may obtained without
charge?  

I am going to be using these under ACL and CMUCL to implement a Bayesian
Classifier for graduate CS course I'm taking.  I tend to think Lisp
would be easier to implement this in than C, or C++. 

Thanks,
-- 
Kenneth P. Turvey <·······@pug1.SprocketShop.com> 

We must all hang together, or most assuredly, we will all hang
separately.
	-- Benjamin Franklin

From: Raymond Toy
Subject: Re: Good Matrix Package?
Date: 
Message-ID: <4nk92ulmtk.fsf@rtp.ericsson.se>
>>>>> "Kenneth" == Kenneth P Turvey <·······@www.sprocketshop.com> writes:

Kenneth> Can anyone recommend a collection of functions implementing matrix
Kenneth> arithmetic (including efficient inversion) that may obtained without
Kenneth> charge?  

Kenneth> I am going to be using these under ACL and CMUCL to implement a Bayesian
Kenneth> Classifier for graduate CS course I'm taking.  I tend to think Lisp
Kenneth> would be easier to implement this in than C, or C++. 

I would think that LAPACK would be the best implementation around.

I have start of an interface between CMUCL and LAPACK via CMUCL's
foreign function interface.  The user sees CLOS objects, but it's
really just sugar on top of the FFI to LAPACK.  It works ok, but the
code and implementation are pretty ugly since I was just exploring.
It's also rather tied to CMUCL although I think there's really only
one place that needs to know that.


Ray
From: Klaus Schilling
Subject: Re: Good Matrix Package?
Date: 
Message-ID: <87zpbqfkwe.fsf@ivm.de>
Raymond Toy <···@rtp.ericsson.se> writes:

> >>>>> "Kenneth" == Kenneth P Turvey <·······@www.sprocketshop.com> writes:
> 
> Kenneth> Can anyone recommend a collection of functions implementing matrix
> Kenneth> arithmetic (including efficient inversion) that may obtained without
> Kenneth> charge?  
> 
> Kenneth> I am going to be using these under ACL and CMUCL to implement a Bayesian
> Kenneth> Classifier for graduate CS course I'm taking.  I tend to think Lisp
> Kenneth> would be easier to implement this in than C, or C++. 
> 
> I would think that LAPACK would be the best implementation around.
> 
> I have start of an interface between CMUCL and LAPACK via CMUCL's
> foreign function interface.  The user sees CLOS objects, but it's
> really just sugar on top of the FFI to LAPACK.  It works ok, but the
> code and implementation are pretty ugly since I was just exploring.
> It's also rather tied to CMUCL although I think there's really only
> one place that needs to know that.

For some special scheme dialect, Chris Lee managed to write a BLAS+LAPACK
interface only recently. Maybe a similar strategy would work for common lisp.

Klaus Schilling
From: Steven D. Majewski
Subject: Re: Good Matrix Package?
Date: 
Message-ID: <6ubjlo$khl$1@murdoch.acc.Virginia.EDU>
In article <······················@www.sprocketshop.com>,
Kenneth P. Turvey <·······@www.sprocketshop.com> wrote:
>Can anyone recommend a collection of functions implementing matrix
>arithmetic (including efficient inversion) that may obtained without
>charge?  
>
>I am going to be using these under ACL and CMUCL to implement a Bayesian
>Classifier for graduate CS course I'm taking.  I tend to think Lisp
>would be easier to implement this in than C, or C++. 
>

If you don't need CLOS, you could consider using XlispStat, which
is a variant of Xlisp ( not Common Lisp but if you exclude CLOS
and the reader, it comes close enough to not notice the difference
most of the time ) with vectorized arithmetic, statistics and matrix
operations and lisp callable BLAS routines. ( The latest version 
also has a package to easily generate wrappers to make any C code
into a lisp callable function in a DLL. ) 

I agree, it nice to do at least all of the higher level stuff in 
Lisp. ( Il'd rather do the low level stuff in Lisp if I had to do
it from scratch, but for matrix arithmetic and linear algebra 
there's CLAPACK and BLAS available. ) 

Unix/X11, Mac and Windows versions are available. 

see:
  http://www.stat.umn.edu/~luke/xls/xlsinfo/xlsinfo.html  
  http://www.xlispstat.org
  http://www.stat.ucla.edu


---|  Steven D. Majewski   (804-982-0831)  <·····@Virginia.EDU>  |---
---|  Department of Molecular Physiology and Biological Physics  |---
---|  University of Virginia             Health Sciences Center  |---
---|  P.O. Box 10011            Charlottesville, VA  22906-0011  |---

"I'm not as big a fool as I used to be, I'm a smaller fool." - Jack Kerouac
Some of the Dharma  <http://members.aol.com/kerouacsis/SomeDharma.html>
From: marisa
Subject: Re: Good Matrix Package?
Date: 
Message-ID: <3609743F.57AE7081@kabelfoon.nl>
Kenneth P. Turvey wrote:

> Can anyone recommend a collection of functions implementing matrix
> arithmetic (including efficient inversion) that may obtained without
> charge?

I have a symbolic algebra package which I wrote some time ago. It is quite
complete, but you shouldn't expect commercial product performance (but I've
seen worse and this is at least quite robust). It includes a very complete
matrix package, fully documented, so it should be easy to understand. At
least it could serve as a starting point for you.
I've tested it with CLISP and XLISP and it will surely run with most other
Common Lisp interpreters.
Cheers, Leo
From: Reini Urban
Subject: Re: Good Matrix Package?
Date: 
Message-ID: <360bc2d1.29067747@judy>
marisa <······@kabelfoon.nl> wrote:
>I have a symbolic algebra package which I wrote some time ago. It is quite
>complete, but you shouldn't expect commercial product performance (but I've
>seen worse and this is at least quite robust). It includes a very complete
>matrix package, fully documented, so it should be easy to understand. At
>least it could serve as a starting point for you.
>I've tested it with CLISP and XLISP and it will surely run with most other
>Common Lisp interpreters.
>Cheers, Leo

leo kindly sent it to me.
he has no web page or ftp dir, so i uploaded it to mine:

http://xarch.tu-graz.ac.at/autocad/lisp/cl/algebra.zip
or
ftp://xarch.tu-graz.ac.at/pub/autocad/lisp/cl/algebra.zip
---
Reini Urban
http://xarch.tu-graz.ac.at/autocad/news/faq/autolisp.html