So I have been using F# for a while and studying a bit of Haskell on the side and I have realized I could rewrite the exact same function one of three different ways.
Either with implicit currying, explicit currying, or with lambda expressions.
//lambdas let add' = fun x -> fun y -> x + y //explicit currying let add' x = let subFunction y = x + y subFunction //implicit currying let add' x y = x + y
All of these have the signature int -> int -> int. All of them do the same thing.
Which one should I use in which case?