|
|
|
|
|
by dons
4861 days ago
|
|
It has nothing to do with laziness. It has everything to do with the guaranteed absence of side effects. Deforestation is /more useful/ in strict languages, because allocation of temporary structures costs more. So fusion on strict arrays is better than on lazy streams. You just can't do it unless you can freely reorder multiple loops, and to do that you need a proof there are no side effects. Haskell just makes that trivial. |
|