newbie question re linear algebra in Haskell

Christopher Milton cmiltonperl@yahoo.com
Tue, 19 Nov 2002 06:03:59 -0800 (PST)


--- Keith Wansbrough <Keith.Wansbrough@cl.cam.ac.uk> wrote:
> > I'm a complete newcomer to Haskell, having learned about only recently.
> > I'm intrigued by the possibility of  in using it for numerical
> > applications, specifically linear algebra.  I understand that (at least
> > in its present state) Haskell 98 isn't competitive with imperative
> > languages when it comes to primitive matrix-vector operations, which
> > often rely on destructive updating.  It strikes me that one approach
> > that takes advantage of the strengths of both paradigms would be create
> > an imperative subsystem to handle primitive operations, then create a
> > functional matrix algebra layer on top of it.
> [..]
> 
> One thing that comes to mind is Barry Jay's FISh language:
> 
>  
>
http://www-staff.it.uts.edu.au/~cbj/Publications/shapes.html#Array_Programming
> 
> This compiles code in a functional language with arrays down to C, by using
> "shape inference" to fix the size of all the arrays.
> 
> I believe FFTW (the Fastest Fourier Transform in the West) similarly uses a
> functional programming language to generate imperative (C) code.

Mr. Austin migfht also want to look at some dated modules at
ftp://ftp.cs.chalmers.se/pub/haskell/library/bevan/

and perhaps at
Matrix Inversion using Quadtrees Implemented in Gofer (1995)
Jeremy D. Frens & David S. Wise
http://citeseer.nj.nec.com/frens95matrix.html

Auto-Blocking Matrix-Multiplication or Tracking BLAS3 Performance from Source
Code (1997)
Jeremy D. Frens & David S. Wise
http://citeseer.nj.nec.com/frens97autoblocking.html

and
>From Fast Exponentiation to Square Matrices: An Adventure in Types
Chris Okasaki
http://www.eecs.usma.edu/Personnel/okasaki/pubs.html#icfp99

Chris


=====
Christopher Milton
cmiltonperl@yahoo.com

__________________________________________________
Do you Yahoo!?
Yahoo! Web Hosting - Let the expert host your site
http://webhosting.yahoo.com