在數字哈斯克爾惹巴教程Wiki,有一個通道讀取(上下文):惹巴性能與列表
10.1融合,以及爲什麼需要它
惹巴主要取決於陣列的融合實現快速代碼。融合是 GHC執行的內聯和代碼轉換的組合,當 它編譯您的程序時,它是一個奇特的名字。融合過程將在Repa庫中定義的數組填充 循環與您在自己的模塊中編寫的「工作」函數合併。如果融合過程失敗,那麼生成的程序將比需要的慢得多,通常使用普通Haskell列表的等效程序的速度要慢10倍。另一方面,如果提供融合工作,則所產生的代碼將運行得如同完全寫入的C程序一樣快。一旦你瞭解到底發生了什麼,製作融合作品並不難 。
,我不明白的部分是這樣的:
「如果這種融合過程中出現故障,那麼 產生的程序會比實際需要的要慢得多,經常10倍 的慢等價的程序使用普通的Haskell列表。「
我明白爲什麼它會運行較慢,如果流融合失敗,但爲什麼它比列表慢得多?
謝謝!
問題的修正是「融合過程失敗」的方式/原因? –