I\'ve been trying to get into F# on and off for a while but I keep getting put off. Why?
Because no matter which \'beginners\' resource I try to look at I see very
(a -> b) means "function from a to b". In type annotation, it denotes a function type. For example, f : (int -> String) means that f refers to a function that takes an integer and returns a string. It is also used as a contstructor of such values, as in
val f : (int -> int) = fun n -> n * 2
which creates a value which is a function from some number n to that same number multiplied by two.