11/05/04 11:44:17.29
>>350
おかげさまで、だいぶ核心に近づいた気がします。
2点確認したいことがあります。
ひとつ、最初の質問の式の後者の式が O(n^2) ではなく O(n) になるのは、
Haskell の仕様ではなく、そのコンパイラのひとつである GHC の仕様のためなのですね。
(今時どの実装でもそうなってるという話は置いておいて)
もうひとつ、>>348 の map 関数の適用で ns が指すものが変わるのでしたら、
[2]から[3]への take 関数の適用では ns の指すものは変わらないのでしょうか。
最後に、GHC の STG の仕様を調べてみたいのですが、どれなのでしょうか。
"Implementing lazy functional languages on stock hardware"
という論文ではないですよね。