[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