Let's say, I have the following code:
let f l = List.map succ l
....
let l = f l in
let l = List.map succ l in
do_something_with l
Is there a way to tell the compiler to optimize it so that it runs as fast
as this code:
let l = List.map (fun x -> succ (succ x)) l in
l
In the first case, there are two passes where succ is applied to each
elements of the list.
In the second case, there is only one pass that applies succ twice to each
element of the list.
Thank you,