[Haskell-cafe] Re: Go Haskell! -> array libraries

Claus Reinke claus.reinke at talk21.com
Fri Nov 28 19:49:21 EST 2008


> Yes, it is very difficult. A sensible API for a standard array library  
> is something that needs more research. FWIW, I don't know of any other  
> language that has what I'd like to see in Haskell. C++ probably comes  
> closest but they have it easy - they don't do fusion.

I assume you've looked at SAC? http://www.sac-home.org/

Their main research and development focus was/has been on arrays 
(fusion/layout/padding/tiling/slicing/data-parallelism/shape-invariance
(source algorithms parameterized over array dimensionality/shape)/
whole-array ops/list-like ops/lots of surface operations reducable to
a minimal set of core operations that need implementation/cache
behaviour/performance/performance/performance/..). When they 
started out, I tried to make the point that I would have liked to have 
their wonderful array ideas in our otherwise wonderful language, 
but they preferred to follow their own way towards world 
domination (*). Does that sound familiar?-)

Claus

(*) ok, they did have a good motive: they came out of a research
    group that had done non-sequential functional programming in
    the 1980s, with all the things we see today: great speedups,
    shame about the sequential baseline; creating parallel threads
    is easy, load balancing slightly harder, but pumping (creating
    thread hierarchies recursively, only to see them fold into a
    small result, for the process to begin again) is a waste, etc.;
    so they decided to start from a fast sequential baseline instead 
    of full functional language, and designed their language around
    arrays instead of trying to add arrays to an existing language.



More information about the Haskell-Cafe mailing list