Question: what is fsharp used for?
Answer: F# functions are used to manipulate objects. Rather than writing code that is object-oriented, in F#, you will often write code that treats objects as another data type for functions to manipulate. Features such as generic interfaces, object expressions, and judicious use of members are common in larger F# programs.