Given:
inOrder :: forall a. (Ord a) => a -> a -> Tuple a a
inOrder a1 a2 | a1 < a2 = Tuple a1 a2
inOrder a1 a2 = Tuple a2 a1
Generate:
var inOrder$ordInt = function (_1) {
return function (_2) {
if (Prelude.greaterThan(ordInt)(_1)(_2)) {
return Data_Tuple.Tuple(_1)(_2);
};
return Data_Tuple.Tuple(_2)(_1);
};
};
When: let x = inOrder 1 2
Why: One fewer closures.
Given:
Generate:
When:
let x = inOrder 1 2Why: One fewer closures.