On a related note, I have another question. Say we have some data
structure, for instance a list, some functions on this data structure
(probably defined with some well known functions, such as map or
fold), and a program using them. Is there any research trying to
rewrite the program, and the data structure, to optimize them ?
Do you mean "computer science"?-) Much of this field could be
rephrased as the search for better representations, to enable
better implementations of algorithms (for some measure of "better"):
do we represent programs as data structures to be interpreted,
or as code to be executed? do we use sets, lists, arrays, ..? how
do we represent sets/lists/arrays/..? do we recompute properties
of data, or do we store them (and is one better always, or sometimes,
and when? or do we need to optimize for the average or the most
common case? how do we define "better", anyway?)? which are
the options, for a particular application domain, or a general class
of data structure/algorithm, and how do they compare? and so on..
But if you limit your question sufficiently, you might have some
luck looking for papers that reference any of these:
Automatic data structure selection: an example and overview,
James R. Low, Communications of the ACM, 1978
http://portal.acm.org/citation.cfm?id=359488.359498
Techniques for the automatic selection of data structures
Low, Rovner, 3rd POPL, 1976
http://portal.acm.org/citation.cfm?id=811540
Rovner, P. Automatic representation selection for associative
data structures. Ph.D. Th., Harvard U., Cambridge, Mass;
Tech. Rep. TR10, U. of Rochester, Rochester, N.Y., Sept. 1976.
Claus
_______________________________________________
Haskell-Cafe mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/haskell-cafe