Why is this F# code so slow?
The problem is that the min3 function is compiled as a generic function that uses generic comparison (I thought this uses just IComparable, but it is actually more complicated – it would use structural comparison for F# types and it’s fairly complex logic). > let min3(a, b, c) = min a (min b c);; val … Read more