Graham Klyne <[EMAIL PROTECTED]> writes: >> I want to use the memo function for implementing a dynamic >> programming algorithm in Haskell.
> - rather than using a function to perform a calculation, use some kind > of indexed data structure to hold the results, initialized with > appropriate expressions > - lazy evaluation means actual calculation of any value in the > structure is suspended until it is actually needed, at which point the > suspended calculation is replaced by the resulting value. I'm not sure about the theoretically correct definition of dynamic programming, but I think you're onto it. Note that it doesn't have to be lazy, you can calculate the values for the complete space if you want. Very useful for any kind of recursive function that calls itself more than once, but with decreasing argument values. Typical for graph or graph-like algorithms (HMM probabilities, sequence alignment). -kzm -- If I haven't seen further, it is by standing in the footprints of giants _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell