Quindi ho usato F # per un po 'e ho studiato un po' di Haskell sul lato e ho realizzato che avrei potuto riscrivere la stessa identica funzione in tre modi diversi.
O con curriculum implicito, curriculum esplicito o con espressioni lambda.
//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
Tutti questi hanno la firma int - > int - > Int. Tutti loro fanno la stessa cosa
Quale dovrei usare nel qual caso?