私には機能があります
slow :: Double -> Double
これは非常に頻繁に (何億回も) 呼び出されますが、約 1,000 個の個別の値に対してのみ呼び出されます。これはメモ化の優れた候補のようですが、Double の関数をメモ化する方法がわかりません。
リストは整数型ではないため、リストを作成する標準的な手法は機能しません。Data.MemoCombinators を見ましたが、Doubles をネイティブにサポートしていません。bits
より多くのデータ型を処理する関数がありましたがDouble
、のインスタンスではありませんData.Bits
。
「遅い」をメモするエレガントな方法はありますか?