For certain recursive definitions (for example infinite fibonacci numbers) it would be nice, if dubplicated expressions would be evaluated simultaneously.
For exmaple
fib = 0 : 1 : zipWith (+) fib (tail fib)
explodes in complexity, even though it is only linear in lazy evaluation. On the other hand, we don't always want to lose this complexity explosion for teaching purposes...
So this feature is probably tricky to get right...
For certain recursive definitions (for example infinite fibonacci numbers) it would be nice, if dubplicated expressions would be evaluated simultaneously.
For exmaple
explodes in complexity, even though it is only linear in lazy evaluation. On the other hand, we don't always want to lose this complexity explosion for teaching purposes...
So this feature is probably tricky to get right...